بک اند چیست؟ یا بک اند دولوپر چه کسی است؟ احتمالا شما نیز اصطلاحات برنامه نویسی مانند بک اند دولوپر (Back-End Developer) و فرانت اند دولوپر (Front-End Developer) را شنیده‌اید. اما معنی این اصطلاحات را نمی‌دانید. برنامه نویسی بک اند چیست؟ یا برنامه نویس بک اند کیست؟ برای پاسخ به این سوالات، ابتدا باید بدانیم که برنامه نویسی Back End چیست؟ و سپس با شغل برنامه نویس Back End آشنا شویم. توسعه‌دهنده بک اند (Back-End Developer) یکی از بهترین شغل‌های برنامه نویسی وب به شمار می‌آید. در این مقاله از آموزش برنامه نویسی دولوپر شو، با شغل بک‌اند دولوپر بیشتر آشنا می‌شویم. در مقاله قبلی نیز با فرانت اند دولوپر آشنا شدیم.

موضوعاتی که در این مقاله به آن‌ها خواهیم پرداخت:

  • بک اند چیست؟ (Back-End)
  • مثال واقعی از کدهای بک اند
  • برنامه نویس بک اند چه کسی است؟ (Back-End Developer)
  • وظایف یک Back-End Developer چیست؟
  • زبان‌ها و تکنولوژی‌های مورد نیاز برای برنامه نویسی بک اند (Back-End Development Language)
  • مسیر یادگیری برنامه نویس بک اند چیست؟
  • تفاوت بین Back-End Engineer و Back-End Developer چیست؟
  • تفاوت برنامه نویسی Front-End و Back-End چیست؟
  • چرا باید برنامه نویس Back-End شویم؟
  • سوالات متداول درباره بک اند چیست؟
  • بازار کار برنامه نویسی بک اند چگونه است؟
  • درآمد و حقوق برنامه نویس بک اند چقدر است؟
  • برنامه نویسی فرانت اند بهتر است یا بک اند؟
  • یادگیری بک اند سخت است یا فرانت اند؟
  • یادگیری بک اند چقدر طول می‌کشد؟

بک اند چیست؟ (Back-End)

حتما شما نیز اصطلاح بک اند (Back-End) را شنیده‌اید اما نمی‌دانید که بک اند چیست؟ بک اند وب همان سمت سرور سایت (Server Side) است یعنی تمام عملیاتی که در پشت صحنه اتفاق می‌افتد و ما آن‌ها را در مرورگر خود مشاهده نمی‌کنیم. مانند عملیات ثبت‌نام و ذخیره اطلاعات در پایگاه داده یا ورود به سایت که از چگونگی انجام این عملیات خبر نداریم.

بگذارید یک مثال ساده بزنیم تا مطلب بهتر جا بیفتد. فرم ثبت‌نام در سایت را در نظر بگیرید که آن را مشاهده می‌کنیم که مربوط به فرانت اند سایت می‌باشد. وقتی که نام، ایمیل و رمز عبور را در فرم وارد می‌کنیم و روی دکمه ثبت‌نام کلیک می‌کنیم، در پشت صحنه کدهایی نوشته شده که چک کند آیا ایمیل وارد شده قبلا در پایگاه داده ثبت شده است؟ اگر ثبت شده باشد با پیام «شما قبلا ثبت‌نام کرده‌اید» مواجه خواهید شد و اگر ثبت نشده باشد، با پیام «شما با موفقیت ثبت‌نام کردید» مواجه خواهید شد.

یا هنگام ورود به سایت، وقتی ایمیل و رمزعبور خود را در فرم ورود وارد می‌کنیم و روی دکمه ورود کلیک می‌کنیم، در پشت صحنه کدهایی وجود دارد که چک می‌کند آیا ایمیل وارد شده صحیح است؟ اگر صحیح بود رمز وارد شده را نیز چک می‌کند اگر صحیح باشد اجازه ورود به سایت داده می‌شود. اگر این اطلاعات نادرست باشد با پیغام «اطلاعات وارد شده صحیح نمی‌باشد» مواجه خواهیم شد. تمام این اطلاعاتی که در پشت صحنه اتفاق می‌افتد و کاربر چگونگی انجام این عملیات را در مرورگر مشاهده نمی‌کند، مربوط به بک اند سایت می‌باشد.

مثال واقعی از کدهای بک اند

به کدهای بک اند زیر نگاه کنید، این کدها برای اتصال PHP به MySQL است و در مرورگر کاربر هرگز نشان داده نخواهد شد:

<?php
$servername = "localhost";
$username = "username";
$password = "password";

// Create connection
$conn = new mysqli($servername, $username, $password);

// Check connection
if ($conn->connect_error) {
  die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
?>

برنامه نویس بک اند چه کسی است؟ (Back-End Developer)

در قسمت قبل دانستیم که بک اند چیست؟ در این قسمت باید ببینیم که برنامه نویس بک اند کیست؟ کدهایی که شرط‌های منطقی سایت را در پشت صحنه یا سمت سرور (Server Side) چک می‌کند را برنامه نویس بک اند نوشته است. در حقیقت بک اند دولوپر (Back-End Developer)، شخصی است که مسئول توسعه نوشتن کدهای سمت سرور است که از دید مرورگر و کاربر مخفی است.

وظایف یک Back-End Developer چیست؟

در قسمت قبل داسنتیم که بک اند چیست؟ و برنامه نویس بک اند چه کسی است؟ در این قسمت با وظایف یک توسعه‌دهنده بک‌اند (Back-End Developer) آشنا می‌شویم. به‌طور کلی برنامه نویس بک اند وطایف زیر را انجام می‌دهد:

  1. برنامه نویس بک اند، منطق و شرط‌های سایت را توسعه می‌دهد.
  2. یک برنامه نویس Back End باید با پایگاه داده آشنا باشد و نحوه ذخیره‌سازی اطلاعات در پایگاه داده را کنترل کند.
  3. بک اند دولوپر برای برنامه خود API می‌نویسد تا آن را در اختیار فرانت اند دولوپر قرار دهد تا بک اند و فرانت اند سایت با یکدیگر در تعامل باشند (برای مثال نحوه چک کردن اطلاعات ثبت‌نام و ورود توسط API در اختیار برنامه نویس فرانت اند قرار می‌گیرد تا با یک پیام «ورود با موفقیت» یا «اطلاعات ورود نادرست» در مرورگر کاربر نمایش داده شود. یعنی چک کردن شرط مربوط به برنامه نویس بک اند است و نمایش نتیجه این شرط‌ها در مرورگر وظیفه برنامه نویس فرانت اند است).
  4. و...

زبان‌ها و تکنولوژی‌های مورد نیاز برای برنامه نویسی بک اند (Back-End Development Language)

در این قسمت از مقاله بک اند چیست، به زبان‌های برنامه نویسی بک اند می‌پردازیم. زبان‌های مختلفی برای برنامه نویسی بک اند سایت وجود دارند و مانند فرانت اند محدود به به یک زبان جاوا اسکریپت نیست. از جمله بهترین زبان‌های برنامه نویسی بک اند می‌توان به موارد زیر اشاره کرد:

تکنولوژی‌های بک اند دولوپر

نام تکنولوژی نوع تکنولوژی
HTML زبان نشانه‌گذاری
CSS زبان استایل‌دهی
JavaScript زبان برنامه نویسی فرانت اند و بک اند
PHP زبان برنامه نویسی بک اند
Python زبان برنامه نویسی بک اند
#C زبان برنامه نویسی بک اند
Java زبان برنامه نویسی بک اند
Golang زبان برنامه نویسی بک اند
Database پایگاه داده برای ذخیره اطلاعات
Laravel فریمورک بک اند برای PHP
ASP.NET Core فریمورک بک اند برای #C
Django فریمورک بک اند برای Python
Spring فریمورک بک اند برای Java
Node.js محیط توسعه بک اند برای جاوا اسکریپت
Beego فریمورک بک اند برای Golang
Git و GitHub ورژن کنترل و ذخیره کدها

از بین زبان‌های برنامه نویسی گفته شده در بالا، یادگیری یک زبان برای برنامه نویسی بک اند وب کافی است و یک بک اند دولوپر نیازی ندارد که همه‌ی این زبان‌ها را بلد باشد. همچنین بک اند دولوپر باید پایگاه داده و SQL را بلد باشد. برای اطلاعات بیشتر در مورد اولویت و ترتیب یادگیری این تکنولوژی‌ها، در مسیر یادگیری برنامه نویسی بک اند، مقاله را مطالعه کنید.

مسیر یادگیری برنامه نویس بک اند چیست؟

در قسمت‌های قبلی دانستیم که بک اند چیست و برنامه نویس Back End کیست؟ همچنین با زبان‌های برنامه نویسی بک اند در قسمت بالا آشنا شدیم. برای یادگیری بک اند، یک نقشه راه وجود دارد که در مقاله زیر به‌طور کامل به آن پرداخته‌ایم:

تفاوت بین Back-End Engineer و Back-End Developer چیست؟

تفاوت بین مهندس بک اند و توسعه‌دهنده بک اند چیست؟ یک مهندس بک اند (Back-End Engineer) بر ساختار، پایداری و عملکرد یک سیستم بک اند متمرکز است، در حالی که توسعه‌دهنده بک اند (Back-End Developer) مسئول کدنویسی الگوریتم‌ها و ویژگی‌هایی است که باعث کارکرد آن می‌شود.

تفاوت برنامه نویسی Front-End و Back-End چیست؟

سوال پرتکرار اینجاست که تفاوت فرانت اند و بک اند چیست؟ در این قسمت به این موضوع می‌پردازیم.

فرانت اند چیست؟ هرچیزی که در ظاهر سایت و در مرورگر خود مشاهده می‌کنید مربوط به فرانت اند سایت است. مانند: قالب سایت، دکمه‌ها، فرم‌ها، جداول، مقالات، متن‌ها، تصاویر، منوها و...

بک اند چیست؟ هرچیزی که در مرورگر خود مشاهده نمی‌کنید و در سمت سرور کنترل می‌شوند مربوط به بک اند سایت است. مانند ذخیره اطلاعات در پایگاه داده، چک کردن اطلاعات کاربر و شرط‌ها و...

چرا باید برنامه نویس Back-End شویم؟

در این قسمت از مقاله بک اند چیست؟ به این سوال پاسخ می‌دهیم که چرا باید برنامه نویس بک اند شویم؟ اگر به کارهای منطقی و شرط‌های سایت علاقه‌مند هستید می‌توانید بک اند دولوپر شوید. شغل بک اند دولوپر یکی از بهترین شغل‌های برنامه نویسی به حساب می‌آید.

سوالات متداول درباره بک اند چیست؟

در این قسمت از مقاله Back End چیست، به سوالات متداول در حوزه برنامه نویسی بک اند می‌پردازیم.

بازار کار برنامه نویسی بک اند چگونه است؟

در این قسمت از مقاله Back End چیست؟ به بارار کار برنامه نویسان بک اند می‌پردازیم. بازار کار برنامه نویس بک اند در ایران به شدت بالا است و اگر سری به سایت‌های استخدامی بزنید متوجه این موضوع خواهید شد. همچنین بازار کار برنامه نویس بک اند در خارج نیز به شدت بالا است. پس نگران این موضوع نباشید.

درآمد و حقوق برنامه نویس بک اند چقدر است؟

در این قسمت از مقاله بک اند چیست، باید به درآمد و حقوق برنامه نویس بک اند بپردازیم. حقوق برنامه نویس بک اند در ایران محدوده خاصی ندارد. اما حقوق برنامه نویس جونیور بک اند معمولا از 7 میلیون تومان شروع می‌شود و حقوق برنامه نویس سنیور بک اند تا 60 میلیون تومان در ماه نیز می‌رسد.

حقوق برنامه نویس بک اند در خارج بالاتر از این ارقام است. به‌طوری که میانگین درآمد برنامه نویسان بک اند در آمریکا 119 هزار دلار در سال است و تا 165 هزار دلار نیز می‌رسد. اگر فریلنسری کار کنید ارقام بالاتر از این را نیز دریافت خواهید کرد.

برنامه نویسی فرانت اند بهتر است یا بک اند؟

در ادامه مقاله بک اند چیست؟ باید به مقایسه فرانت اند و بک اند بپردازیم. فرانت اند بهتر است یا بک اند؟ به‌طور کلی هر دو مکمل همدیگر هستند و نمی‌توان یکی را برتر از دیگری دانست. اگر به کارهای ظاهری و توسعه قالب سایت علاقه‌مند هستید، فرانت اند برای شما انتخاب بهتری است و اگر به کارهای منطقی، شرطی، الگوریتمی و پایگاه داده‌ای علاقه‌مند هستید، بک اند برای شما مناسب‌تر است.

یادگیری بک اند سخت است یا فرانت اند؟

در این قسمت از مقاله بک اند چیست؟ به مقایسه میزان سختی بک اند و فرانت اند می‌پردازیم. یادگیری بک اند و فرانت اند هر دو به یک میزان چالش دارند. و نسبت یه یکدیگر آسان نیستند. به هر کدام که علاقه‌مند هستید شروع کنید.

یادگیری بک اند چقدر طول می‌کشد؟

در انتهای مقاله Back End چیست؟ به مدت زمان یادگیری برنامه نویسی بک اند می‌پردازیم. یادگیری بک اند حدود 6 ماه زمان نیاز دارد. اما این به معنی حرفه‌ای شدن نیست. در این زمان می‌توانید به یک بک اند دولوپر معمولی تبدیل شوید. برای حرفه‌ای شدن در بک اند نیاز به انجام پروژه‌ها و چالش‌های بیشتر است.

جمع‌بندی

بک اند چیست؟ در این مقاله به این پرداختیم که Back-End چیست؟ و بک اند دولوپر (Back-End Developer) کیست؟ یک توسعه‌دهنده بک اند کدهای سمت سرور (Server Side) سایت را توسعه می‌دهد که در مرورگر قابل مشاهده نیستند. برنامه نویسی بک اند، بازار کار و درآمد بسیار خوبی در ایران و جهان دارد. اگر به کارهای منطقی و شرطی در سایت علاقه‌مند هستید، شغل بک اند دولوپر (Back-End Developer) مناسب شما است.