بک اند (Back End) چیست؟
دسته بندی: برنامه نویس یار
بروزرسانی شده در 21 مهر 1400

یکی از اصلی ترین معانی واژهی Back، پشت میباشد. این معنی با کاری که برنامه نویسی بک اند میکند ارتباط دارد.
وقتی از برنامه نویسی بک اند صحبت میکنیم، منظورمان تمام آن کارهایی است که در پشت صحنه انجام میشود و کاربر آنها را نمیبیند.
در تعریف طراحی/برنامه نویسی فرانت اند گفتیم:
طراحی یا کدنویسی هر آن چیزی که مربوط به جلوی وبسایت میشود. در واقع یک طراح وب یا یک Front End Developer، کسی است که چیزی را طراحی میکند و کاربر آن را می بیند.
اما برنامه نویسی بک اند (Back End)، دقیقا آن سوی ماجرا قرار دارد. اگر بخواهیم به سوال Back End چیست خیلی ساده پاسخ دهیم، میتوانیم بگوییم:
برنامه نویسی بک اند (Back End) مربوط به کدنویسی و برنامه نویسی هر آن چیزی است که کاربر آن را مشاهده نمیکند و مربوط به کارهای پشت صحنه وب سایت است. وظیفهی یک برنامه نویس بک اند، برنامه نویسی چیزهایی است که هسته اصلی یک وبسایت هستند و کاربر کدهای آنرا بصورت مستقیم مشاهده نمیکند.
مقایسه با فرانت اند:
یک نکتهی خیلی جالب در تفاوت برنامه نویسی فرانت اند (Front End) و برنامه نویسی بک اند (Back End) وجود دارد. و آن هم نمایان بودن یا نبودن کدهای آن برای کاربران سایت شماست.
وقتی که شما در حال طراحی وب با تکنولوژی هایی مثل HTML, CSS, Javascript و… هستید، تمام کدهایی که نوشتید را کاربر میتواند به راحتی ببیند. زیرا آن کدها مربوط به کاربر هستند و به آنها دسترسی مستقیم دارد.
اما کاربر هیچ وقت هیچ دسترسی ای نمیتواند به کدهای بک اند داشته باشد. به این دلیل که این کدها سمت سرور پردازش و اجرا میشوند و کاربر به هیچ وجه نمیتواند آنها را ببیند، بلکه فقط نتیجهای که ایجاد میکنند را مشاهده میکند.
برای مثال تمام آن کسانی که در صحنه تئاتر نقش آفرینی میکنند و تماشاچیان آنها را میبینند را میتوانیم بگوییم Front End یک اجرای تئاتر هستند و تمام کسانی که در پشت صحنه فعالیت میکنند، مثل طراح لباس، کارگردان، نویسنده، تهیه کننده و… که تماشاچیان آنها را نمیبینند، ولی کارشان روی اجرا تاثیر دارد را میتوانیم Back End یک اجرای تئاتر بنامیم.
Server Side و Client Side به چه معنا هستند؟
Client Side:
Client به معنای مشتری است و Client Side به معنی زبانهایی است که سمت کاربر کار میکنند. برای مثال میتوان به HTML, CSS, Javascript و… زبانهای سمت کاربر و Client Side نیز بگوییم. در نتیجه به مجموع کاری که این زبانها انجام میدهند، طراحی وب یا Front End Development میگوییم.
Server Side:
زبانهایی که در این دسته بندی قرار میگیرند، روی سرور اجرا میشوند و برای اجرا شدن به یک سرور نیاز دارند. برای مثال زبانهایی مثل PHP یا ASP.NET برای اجرا حتما به یک سرور نیاز دارند، که این سرور هم میتواند یک سرور واقعی در دنیای آنلاین باشد و هم یک شبیه ساز سرور یا لوکال هاست (Localhost). به زبانهای برنامه نویسیای که سمت سرور اجرا میشوند، زبانهای Server Side و به مجموع کاری که این زبانها انجام میدهند، برنامه نویسی بک اند یا Back End Development میگویند.
مهارتهای یک برنامه نویس Back End چیست؟
برای تبدیل شدن به یک برنامه نویس بک اند، شما باید مهارتهای زیادی داشته باشید. اگر بخواهیم بصورت خلاصه این مهارتها را لیست کنیم، میتوانیم به موارد زیر اشاره کنیم:
زبان برنامه نویسی سمت سرور
برای برنامه نویسی سمت سرور یا برنامه نویسی بک اند، اولین چیزی که نیاز دارید، یک زبان برنامه نویسی مثل PHP است که سمت سرور اجرا شود.
پایگاه داده
دومین چیزی که حتما و قطعا به آن نیاز دارید، پیدا کردن تسلط به یک دیتابیس (database) یا پایگاه داده است.
میتوان گفت که اصلی ترین کار زبان های برنامه نویسی سمت سرور، توانایی ارتباط برقرار کردن آنها با دیتابیس است.
وقتی شما به دیتابیس مسلط باشید و بتوانید با استفاده از زبان برنامه نویسیتان به دیتابیس وصل شوید، میتوانید به سرویسهای آنلاینتان قدرت فوق العادهای بدهید و از مزیتهای فوق العادهی دیتابیس استفاده کنید.
مباحث پیشرفته زبان برنامه نویسی
به این معنا که بتوانید با آن زبان برنامه نویسی که کار میکنید، کدهای حرفهای و پیشرفتهای بنویسید. هرچقدر کدی که مینویسید بهتر و حرفهای و تمیزتر باشد، بازدهی کد شما بالاتر میرود و در نهایت سرویس آنلاین قوی تر و سریعتری خواهید داشت.
برای مثال در برنامه نویسی PHP، شما اگر بتوانید کدتان را به شیوهی شی گرایی (Object Oriented) بنویسید، کد شما میتواند خیلی تمیزتر، سریعتر و حرفهای تر باشد.