آیا کنجکاو هستید که بدانید برنامه نویسی فرانت اند چیست؟ شاید شما طراحی سایت فروشگاهی در مشهد هم از جمله افرادی باشید که بارها عبارات فرانت اند و بک اند را شنیدهاید ولی معنی و مفهوم آنها را نمیدانستید. اغلب برنامه نویسانی که در حوزهی وب کار میکنند، این سوال را از یکدیگر میپرسند: برنامه نویس بک اند هستی یا برنامه نویس فرانت اند؟
فرانت اند یا Front End، به بخش قابل مشاهدهی یک وب سایت یا نرم افزار توسط کاربران میگویند. فرانت اند، کدهای غیر قابل فهم برای کاربران را در قالب ظاهری گرافیکی و بصری به آنها نمایش میدهد تا بتوانند به راحتی از بخشهای مختلف سایت استفاده کنند. در این بخش، فرمهای ورودی اطلاعات، صداها، تصاویر، ویدئوها و به صورت کلی هر چیز دیگری که برای کاربر قابل درک باشد، قرار میگیرد.
فرانت اند به دو بخش اصلی طراحی و توسعه رابط کاربری تقسیم میشود. در بخش طراحی، طراحان با نرم افزارهای گرافیکی مانند فتوشاپ، ادوبی ایکس دی، فیگما و… ظاهر سایت را طراحی میکنند. اما بخش توسعهی رابط کاربری مربوط به پیاده سازی ظاهر سایت در قالب کدهای HTML ،CSS و جاوا اسکریپت است. بخش قابل مشاهده سایت برای کاربران در سمت فرانت را سمت کاربر یا Client Side مینامند. بنابراین کدهای نوشته شده در سمت فرانت اند، در مرورگر کاربر پردازش و اجرا میشوند. یعنی کاربر به راحتی به این کدها دسترسی مستقیم دارد و میتواند آنها را مشاهده کند. فرانت اند با بخش بک اند (Backend) در ارتباط مستقیم است و بر روی تجربه کاربران هنگام استفاده از محصول تاثیر بسیاری میگذارد.
زبانهای برنامه نویسی Front end کدامند؟
زبان HTML یک زبان برنامه نویسی نیست بلکه یک زبان نشانه گذاری است که به عنوان هسته و بدنه اصلی صفحات وب به حساب میآید. منظور از زبان نشانه گذاری، این است که کد نوشته شده به زبان HTML مانند یک فایل متنی است که اجزای مختلف آن با تگ از هم جدا شدهاند. این زبان برای ایجاد ساختار صفحات وب استفاده میشود. برای آشنایی بیشتر با HTML میتوانید مقالهی HTML چیست؟ را مطالعه کنید.
زبان CSS (مخفف عبارت Cascading Style Sheets) به منظور استایل دهی به اجزای مختلف صفحات وب سایت مانند متن، تصویر، کادرها و… ساخته شده است. در حقیقت شما اجزا و المانهای یک سایت یا برنامه را با HTML در صفحهی خود قرار میدهید و با استفاده از CSS شکل و ظاهر آن المانها را شخصی سازی میکنید. پس CSS طراحان سایت را قادر میسازد که بدون محدودیت خلاقیتهای خود را در طراحی صفحات سایت پیاده سازی کنند. سایر اطلاعات مربوط به CSS در مقالهی CSS چیست؟ آورده شده است.
Backend یا بک اند، به بخشی از یک وب سایت یا نرم افزار میگویند که برای کاربران قابل مشاهده نیست. به عبارتی دیگر هسته و مغز یک سایت است که وظیفه کنترل منطق آن را بر عهده دارد. سایتهای دینامیک به برنامه نویس بک اند نیاز دارند تا منطق سایت را به وسیله زبانهای برنامه نویسی پیادهسازی کنند. کاربران به کدهای نوشتهشده در بک اند دسترسی ندارند و نمی توانند آنها را مشاهده کنند.
این بخش از سایت مانند قسمتی از کوه یخ است که در زیر سطح آب قرار گرفته است. سمت سرور با بخش سمت کاربر ارتباط مستقیم دارد و به اجزایی که در رابط کاربری طراحی شدهاند جان میبخشد. برنامه نویس بک اند باید اطلاعات را متناسب با اهداف مختلف از پایگاهداده دریافت کند و در صورت نیاز پس از پردازش به کاربر نمایش دهد. بنابراین Backend از دو بخش منطق سایت و پایگاه داده تشکیل شده است
جمع بندی
به دلیل متنوع بودن زبانهای برنامه نویسی، فریم ورکها و کتابخانه ها، معمولا یک نفر نمیتواند به تنهایی از پس تمام کارهای یک پروژه بزرگ بربیاید. برای مثال در توسعه وب برنامه نویسان معمولا در دو بخش Front End و Back End فعالیت دارند. به این شکل که یک نفر یا یک تیم ظاهر سایت را ساخته و یک نفر یا یک تیم منطق سایت را پیاده میکنند. اگر یک نفر بتواند هر دو بخش کار را با هم انجام دهد، به آن شخص Fullstack Developer میگویند. یک Fullstack Developer این توانایی را دارد که به تنهایی یک پروژه را به طور کامل انجام داده و صفر تا صد آن را انجام دهد. به عبارت دیگر، یک فول استک دولوپر متخصصی است که دانش زیادی در برنامه نویسی، پایگاه داده، سرور، شبکه و موارد دیگر IT دارد.