بک اند چیست؟ اگه به حوزه برنامه نویسی وب علاقه داشته باشید، حتما کلمه های فرانت اند و بک اند به گوشتون خورده.
back-end: برنامه نویسی بک اند (Back End) مربوط به کدنویسی و برنامه نویسی چیز هایی هست که کاربرد اون رو مشاهده نمیکنه و نمیتونه ببینه، یعنی مربوط به کارهای پشت صحنه وب سایته. مثلا وقتی که یک وبسایت، مقالات را از دیتابیس دریافت میکنه، این کار توسط بک اند انجام میشه.
وظیفهی یک برنامه نویس بک اند اینه که چیز هایی رو که هسته اصلی یک وبسایت رو تشکیل میدن برنامه نویسی کنه که کد هاش رو هیچکس جز خود برنامه نمیتونه ببینه. به زبان خیلی ساده بخوام بک اند رو توضیح بدم به اتفاقاتی که پشت یه وبسایت اتفاق میوفته، تا سایت به خوبی کار کنه، بک اند میگن؛ اما این پشت سایت دقیقا کجای سایت هست؟ اصلا مگه سایت پشت داره؟
باید بگم نه، سایت پشت نداره و بک اند نمیره پشت کامپیوتر از عقب کار کنه باهاش! حالا یه یه برنامه نویس بک اند کیست؟ به کسی که منطق و مغز یک وبسایت رو میسازه، برنامه نویس بک اند میگن. چطوری؟ مقاله رو بخون تا کامل تر و تخصصی تر متوجه شی که back end چیست!
توی این مقاله قصد داریم از زبان یکی از خبره ترین برنامه نویس های بک اند، در مورد مباحثی مثل بک اند چیست، برنامه نویس بک اند، بازار کار بک اند و … توضیح بدیم و به سوالات پر تکرار مرتبط با بک اند پاسخ بدیم.
تفاوت بک اند و فرانت اند
واضح بگیم، فرانت یعنی ظاهر، قسمت جلویی و قسمت قابل مشاهده از هر چیز؛ کلمه بک یعنی پشت، باطن و قسمت غیر قابل مشاهده از هر چیز. در حوزه برنامه نویسی وب هم دقیقا همینطوره!
ما کاربر سایت هستیم و میتونیم قسمت Header رو ببینیم، یا حتی میتونیم فوتر، قسمت محصولات، دوره ها یا مقاله هارو ببینیم. تمام این قسمتایی که برای ما قابل مشاهده هست رو فرانت اند (Front End) نام گذاری کردن.
برنامه نویسی بک اند (Back End) مربوط به برنامه نویسی هر آن چیزی است که کاربر نمیتونه ببینتش و مربوط به کارهای پشت صحنه وب سایت است. مثلا وقتی که یک وبسایت مقالات رو از دیتابیس میگیره، یک امر مربوط به بک اند است. وظیفهی یک برنامه نویس بک اند، برنامه نویسی چیزهایی است که هسته اصلی وبسایت هستند و کاربر کدهای آن را بصورت مستقیم نمیتونه ببینه.
شما همین صفحه لاگین را در نظر بگیرید، برای ورود به پنل کاربری خود از شما اطلاعات نام کاربر و گذرواژه رو میخواد و شما اطلاعات رو وارد میکنید و روی دکمه “ورود” کلیک میکنید.
حالا، نتیجه این کلیک به اطلاعات شما بستگی داره، یعنی ممکنه شما بتونید وارد شید و ممکن هم هست سایت به شما اخطار بده که نام کاربردی یا رمز ورودتون اشتباهه!
اگه نمیدونید وظیفه بک اند چیست، دقیقا همینجا وظیفش شروع میشه! چطور و از کجا متوجه صحیح یا غلط بودن اطلاعات شما شد؟
یا چه بلایی سر اطلاعات شما میاد تا به شما اجازه ورود به پنل رو بدن؟ اینا سوال هاییه که ما جوابشو نمیدونیم چون نمیتونیم ببینیم این قسمت هارو، چون وظیفه کد هایی هست که Back End سایت رو ساختن.
این فقط یک مثال خوب برای درک مفهوم بک اند بود و قسمت های زیادی از هر وب سایت داینامیک توسط بک اند هندل میشه؛ مثل سبد خرید، درگاه پرداخت، ثبت نام و …
مهارت های فنی مورد نیاز یک برنامه نویس بک اند – چی لازمه بلد باشم؟
یکی از مهم ترین قسمت های یادگیری یه حوزه جدید اینه که ابزار ها و مفاهیم مربوط بهش رو بدونیم تا یه شروع خوب داشته باشیم؛ حالا مهارت های لازم برای برنامه نویسی بک اند چیست؟
تسلط به حداقل یک زبان برنامه نویسی سمت سرور (Back end)
گیت
کار با دیتابیس یا پایگاه داده
البته این ها مهارت های فنی مورد نیاز بود، اگه شما قراره برنامه نویسی بک اند رو تازه شروع کنید؛ بهتره تا مهارت های پایه ای بیاید جلو.
مهارت های پایه و اساسی یک برنامه نویس بک اند – به جز مهارت فنی چی لازم دارم؟
مهارت خلاقیت
مهارت خلاقیت بالا حرف اول رو توی برنامه نویس بک اند شدن میزنه، شما قراره یه چیز جدید رو خلق کنید پس اولین چیزی که نیاز دارید خلاقیته.
قوه حل مسئله
توی این مسیر تا دلتون بخواد چالش جلوی روتون دارید و بدون یه مغز خلاق که به دنبال راه حل میگرده، احتمالا نتونید وارد این بازی مهیج شید.
ذهن منطقی و تحلیلگر
بعضی وقتا فقط پیدا کردن راه حل جواب نمیده و ذهن شما باید آمادگی داشته باشه تا مسائل رو حل کنه و منطقی جلو بره، از بقیه برنامه نویس ها سوال کنه تا بتونه توی مسیر پیشرفت کنه؛ که حتی اگه الان آمادگی اینکار رو ندارید نگران نباشید چون به شرط اینکه با علاقه پیش برید، به این مرحله هم میرسید.
برای ورود به دنیای برنامه نویسی وب باید ریاضی بلد باشیم؟
برنامه نویسی با کد کار داره، نه با انتگرال؛ پس نه!
البته ریاضی نقش هایی داره توی برنامه نویسی، مثلا اگه شما ریاضی بلد باشید قوه حل مسئلتون سریع تر کار میکنه و سرعت انجام کارهاتون میره بالاتر؛ اما مهم رسیدن به مقصده هست.
پس شما چه با بلد بودن ریاضی و چه بدون اون میتونید راحت وارد این حوزه شید؛ فوقش با حل کردن مسائل الگوریتمیک و مطالعه سوالات مسابقات ACM، قوه حل مسئلتون رو تقویت کنید.
پایگاه داده (دیتابیس) در برنامه نویسی بک اند چیست؟
دیتابیس یا همون پایگاه داده یکی از مفاهیم و تکنولوژی هاییه که هر برنامه نویس بک اند باهاش سروکار داره. دیتابیس توی برنامه نویسی بک اند چیکار میکنه؟
توی وب سایت ها، ما نیاز داریم که اطلاعات رو ذخیره کنیم؛ مثلا اگه کاربری ثبت نام میکنه یا مدیر سایت یه سری محصولات رو روی سایت قرار میده، همه این اطلاعات در جایی به اسم دیتابیس ذخیره و مدیریت میشن که پیاده سازی آن به عهده برنامه نویس بک انده!
دیتابیس های مختلف و متنوعی وجود دارن که از معروف ترین آن ها می توان به MySQL, MongoDB, SQL Server, PostgresDB و … اشاره کرد.
مفهوم API و API نویسی برای برنامه نویس بک اند
ممکنه بعد از اینکه کلمه API رو توی حوزه برنامه نویسی وب شنیده باشید بنظرتون مبحث سختی بیاد، ولی اصلا اینطور نیست!
وقتی شما میخواید از اطلاعات سرور و وب یک سایت استفاده کنید؛ به اطلاعاتش دسترسی ندارید، یعنی مدیر سایت به شما اجازه نمیده که کل اطلاعات رو داشته باشید!
برای همین منظور یک API نوشته میشه تا برنامه نویسان بتونن به اطلاعات مجاز آن وب سایت دسترسی داشته باشن.
با یه مثال بهتر توضیح بدیم: شما وقتی وارد وب سایت دیجی کالا میشید به اطلاعات محصولات یا اطلاعات کاربرای ساخت دسترسی ندارید.
حالا ممکنه قصد داشته باشید از اطلاعات محصولات دیجی کالا استفاده کنید، برنامه نویس های بک اند دیجی کالا یک API نوشته و در اختیار شما قرار میدن تا شما به کمک API به اطلاعات هر محصول مثل عنوان، قیمت، تعداد فروش و … دسترسی داشته باشید.
در کل API برای دسترسی به اطلاعاتی که خارج از سرور ما قرار دارن استفاده میشن.
پس وقتی که شما تبدیل به یه برنامه نویس بک اند شدید، API نوشته شده توسط شما توی دیتابیس یا همون پایگاه داده ذخیره میشه.
حالا برای اینکه این اطلاعات توی ظاهر سایت دیده بشه، شما این اطلاعات API رو به برنامه نویس Front End تحویل میدید تا اون رو روی سایت قرار بده!
زبان های برنامه نویسی بک اند چیست؟
حالا وقت اینه که بدونیم یه برنامه نویس بک اند به چه زبانی با کامپیوترش حرف میزنه و دستور ها رو بهش میفرسته؛ اینجاست که مهم میشه زبان های برنامه نویسی رو که توی این کار کمکمون میکنن بهتر بشناسیم!
زبان برنامه نویسی C#
سی شارپ یکی از زبان های ساده، مدرن، شی گرا، کاربردی و منطقی هست که از تکنولوژی ASP.Net برای ایجاد و طراحی سایت استفاده میکنه. سی شارپ حسابی تو ایران محبوبه و از سایت بانک ملی و ملت گرفته تا دیجی کالا و بلاگفا رو با سی شارپ درست کردن!
زبان برنامه نویسی PHP
PHP یکی از بان های متن باز هست که جامعه آماری بزرگی رو داره و حسابی سرعت اجراییش بالاست. PHP پشتیبانی خیلی خوبی داره و بخاطر همین سایت های خیلی بزرگی مثل فیس بوک، یاهو، یا حتی سایت های ایرانی مثل بامیلو توی ساختشون از این زبان استفاده کردن؛ حتی مقاله هایی که توسط ورد پرس روی سایت ها قرار میگیرن هم کار این زبانه.
زبان برنامه نویسی Python
پایتون یکی از زبان های مدرن، ساده، شی گرا و چند منظوره هست و شما بهتر از زبان های دیگه میتونید یادش بگیرید، این زبان نه تنها برای طراحی سایت و بک اند، بلکه برای کارهای بیشتری هم کاربرد داره و محبوبی مثل پینترست، نت فیلیکس و اوبر از پایتون برای طراحی سایتشون استفاده کردن.
زبان برنامه نویسی Perl
یکی دیگه از زبان های برنامه نویسی چندمنظوره که هم برای حوزه وب هم برای بقیه حوزه های برنامه نویسی مثل هوش مصنوعی و طراحی های صنعتی، Perl هست؛ این زبان سرعت خیلی خوبی داره و شما میتونید با یادگرفتنش چندین کار رو باهم انجام بدید چون کاملا قابل اعتماده!
بازار کار و درآمد برنامه نویسی بک اند
امروزه هر شغلی به طراحی سایت و نرم افزار نیاز داره، پس برنامه نویس های بک اند اگه کارشون خوب باشه حسابی نونشون تو روغنه!
این یه حقیقته که قبل از ورود به هر حوزه ای، درآمدش رو چک میکنیم و مطمئن میشیم که تلاش هامون ما رو به جای خوبی برسونه، اما توی برنامه نویسی زیاد مهم نیست حوزه شما چی باشه، اگه خوب یادگرفته باشید که با کد ها چه چیزایی رو خلق کنید پس بدون شک درآمد خوبی هم دارید.
درآمد سالانه متخصصان پایتون در آمریکا، تقریبا ۹۰ هزار دلار در ساله، همین متخصص ها تو ایران تقریبا درآمدی بین 5 تا 10 میلیون دارن. برنامهنویسی با استفاده از SQL در آمریکا، به 95 هزار دلار در سال میرسه، در حالی که در ایران، کارشناسان این حوزه حدود 5 تا 7 میلیون درآمد دارن. البته تمام این درآمد ها بستگی به نوع پروژه هایی داره که شما میگیرد؛ مسلما اگه شما تونسته باشید خوب برنامه نویسی رو یادبگیرید میتونید به صورت فریلنسری کار کنید و حتی درآمد دلاری داشته باشید.
برای ارتباط با ما و آشنایی با خدمات می تونید به سایت معرفان مراجعه کنید یا از طریق شماره تماس ۰۲۱۸۸۷۰۴۰۰۰ با ما در ارتباط باشید.