بک اند چیست ؟ + مهارت های یک برنامه نویس بک اند
بک اند (Back End) چیست ؟
بک اند چیست ؟ اگر به حوزه برنامه نویسی وب علاقه داشته باشید، قطعا کلماتی مثل فرانت اند و بک اند را شنیده اید.
در این مقاله قصد داریم در مورد مباحثی مثل بک اند چیست، برنامه نویس بک اند، بازار کار بک اند و … به سوالات پر تکرار مرتبط با بک اند پاسخ دهیم. و این که چطور میتوانید در حوزه برنامه نویسی فردی موفق باشید مطالبی به شما ارائه دهیم. برای خواندن ادامه مطالب لطفا با ما همراه باشید تا از تفاوت ها و شباهت ها و ریز و درشت تکنولوژی های برنامه نویسی مرتبط با بک اند برای شما بیشتر بیان کنیم .
تفاوت سایت استاتیک و داینامیک
بک اند چیست ؟ اگر شما به حوزه برنامه نویسی وب علاقه داشته باشید، مفاهیم استاتیک و داینامیک را شنیده اید. تمام وب سایت های موجود در سراسر اینترنت به دو دسته استاتیک و داینامیک تقسیم می شوند. استاتیک در لغت به معنی ثابت بوده و کلمه داینامیک به معنی پویا و غیر ثابت می باشد.
وب سایت های استاتیک وب سایت هایی هستند که محتوای آن ها ثابت بوده و برای تمام کاربران آن سایت به یک شکل نمایش داده می شود.
محتوای وب سایت های استاتیک همگی سمت کلاینت نوشته می شوند و هیچ دیتا و اطلاعاتی در سمت سرور و دیتابیس موجود نیست (در ادامه مقاله در مورد دیتابیس به طور مفصل صحبت خواهیم کرد)
اما وب سایت های داینامیک وب سایت هایی هستند که اطلاعات آن ها از سمت سرور و دیتابیس به کلاینت (فرانت اند) داده می شوند و همچنین ممکن است هر قسمت از وب سایت برای هر شخص نسبت به بقیه کاربران متفاوت باشد.
برای درک بهتر این تفاوت بهتر یگ مثال می زنیم.
وب سایت سبزلرن را در نظر بگیرید. شخص x و شخص y در چند مورد از دوره های سبزلرن ثبت نام می کنمد. حالا اگر هر کدام از آن ها وارد پنل کاربری شوند، دوره هایی که خودشان ثبت نام کرده اند را مشاهده می کنند و هر شخص در پنل کاربری خود قادر به مشاهده اطلاعات بقیه کاربران نیست. بک اند چیست ؟
پس پنل کاربری سبزلرن بصورت داینامیک پیاده سازی شده است و نمایش آن برای هر شخص، به اطلاعات آن شخص بستگی دارد.
یک مثال دیگر این که قسمت نوبار یک وب سایت را در نظر بگیرید.
قطعا مشاهده کرده اید زمانی که برای اولین بار وارد وب سایتی می شوید، در قسمت NavBar دکمه هایی تحت عنوان لاگین و ثبت نام وجود دارند.
اما اگر شما در سایت لاگین کرده باشید و مجددا وارد وب سایت شوید، در این قسمت از نوبار به جای دکمههای ثبت نام و لاگین دکمه ای تحت عنوان “ورود به پنل کاربری” نمایش داده می شود.
همین قسمت از وب سایت نیز به صورت داینامیک پیاده سازی شده و به بک اند مربوط می شود.
نکته بعدی این است که برای ایجاد کوچک ترین تغییر در محتوای وب سایت های داینامیک، نیازی به تغییر کد های وب سایت نیست و شما به کمک CMS (پنل مدیریت) وب سایتتان می توانید تمام قسمت های وب سایتتان را کنترل مدیریت کنید.
در حالی که وب سایت های استاتیک به این شکل نیستند و شما برای ایجاد هرگونه تغییر در آن ها، باید سورس کد وب سایت را دستکاری کنید.
نقش جاوا اسکریپت در بک اند (نود جی اس) + ویدئو
تفاوت بک اند و فرانت اند
همان طور که اطلاع دارید حوزه وب به دو قسمت فرانت اند و بک اند تقسیم می شود.
اگر بخواهیم معنی و مفهوم کلمات فرانت بک را مورد بررسی قرار دهیم، فرانت یعنی جلو، ظاهر و قسمت قابل مشاهده از هر چیز و کلمه بک یعنی پشت، باطن و قسمت غیر قابل مشاهده از هر چیز.
در حوزه برنامه نویسی وب نیز دقیقا همین است.
قسمتی از وب سایت که توسط کاربر قابل مشاهده بوده و کاربر می تواند آن قسمت را مشاهده کند، قسمت فرانت اند محسوب شده و قسمتی از وب سایت که توسط کاربر قابل مشاهده نیست قسمت بک اند محسوب می شود.
به عنوان مثال اگر بخواهیم یک مثال خوب برای درک بهتر فرانت اند بزنیم، وب قسمتی از وب سایت سبزلرن مراجعه می کنیم.
به تصویر زیر دقت کنید:
همان طور که در تصویر بالا مشخص است، ما به عنوان کاربر می توانیم قسمت Header از وب سایت سبزلرن را مشاهده کنیم.
تمام قسمت هایی از هر وب سایت مثل هِدِر، فوتر، قسمت محصولات، قسمت دوره ها، مقالات و … که کاربر می تواند آن ها را مشاهده کند، از قسمت فرانت اند محسوب می شود.
ممکن است برایتان سوال باشد که مگر می شود که کاربر قادر به مشاهده قسمتی از وب سایت نباشد.
جواب این سوال مثبت است. شما وارد هر وب سایت داینامیک که شوید، قسمت های بسیار زیادی از وب سایت را مشاهده نمی کنید و از اتفاقاتی که در آن قسمت ها می افتند آگاه نیستید. برای درک بهتر این بک اند هم یک مثال از وب سایت سبزلرن می زنیم.
به تصویر زیر توجه کنید:
شما همین صفحه لاگین از وب سایت سبزلرن را در نظر بگیرید.
برای ورود به پنل کاربری خود از شما اطلاعات نام کاربر و گذرواژه را درخواست می کند.
حال شما این اطلاعات را وارد کرده و سپس روی دکمه “ورود” کلیک می کنید.
نتیجه این کلیک به اطلاعات شما بستگی دارد.
ممکن است به شما اجازه ورود به پنل را بدهد و همچنین ممکن است به شما بگوید نام کاربری یا گذرواژتان اشتباه است.
سبزلرن چطور و از کجا متوجه صحیح یا غلط بودن اطلاعات شما می شود؟
چه بلایی سر اطلاعات شما می آید تا به شما اجازه ورود به پنل داده شود؟
آیا می توانید به این سوالات پاسخ دهید؟ قطعا نه.
چون قادر به مشاهده این قسمت ها نیستید.
دقیقا همین قسمت از وب سایت سمت بک اند پیاده سازی می شود.
این فقط یک مثال خوب برای درک مفهوم بک اند بود و قسمت های زیادی از هر وب سایت داینامیک توسط بک اند هندل می شود؛ مثل سبد خرید، درگاه پرداخت، ثبت نام و … .
در این قسمت به طور عمیق و کامل با مفاهیم فرانت اند و بک اند آشنا شدیم.
پیش نیاز هایی از فرانت اند برای بک اند
اگر فکر می کنید یک برنامه نویس بک اند هیچ نیازی به یادگیری فرانت اند ندارد، سخت در اشتباه هستید.
هر برنامه نویس بک اند برای این که برنامه نویس قوی و خوبی باشد، باید تکنولوژی های اصلی فرانت اند را در حد آشنایی بلد باشد. تکنولوژی هایی مثل:
• Html
• Css
• JavaScript
• jQuery
• BootStrap
و پس از این که با این تکنولوژی ها پروژه های متعددی را به عنوان نمونه کار برای خودتان پیاده سازی کردید، می توانید زبان بک اند خودتان را انتخاب کنید.
اما ممکن است برایتان سوال باشد که بک برنامه نویس بک اند چه نیازی به یادگیری مباحث مربوط به فرانت اند دارد!
برای پاسخ به این سوال، یک شرکت یا تیم برنامه نویسی را در نظر بگیرید که در هر شرکت افراد مختلف با سِمَت ها و تخصص های مختلف وجود دارند که از این سمت ها می توان به برنامه نویس فرانت اند و برنامه نویس بک اند اشاره کرد.
در اکثر شرکت ها زمانی که پروژه ای را شروع می کنند، ابتدا برنامه نویس فرانت اند طرح پروژه را کد نویسی کرده و بعد از این که تمام شد، فرانت پروژه کد نویسی شده است را به برنامه نویس بک اند شرکت تحویل می دهد تا او (برنامه نویس بک اند) سمت سرور پروژه را نیز پیاده سازی کند.
حال اگر برنامه نویس بک اند اطلاعاتی از فرانت اند نداشته باشد و با کد های نوشته شده توسط فرانت اند آشنایی نداشته باشد، سردرگم می شود و مدام باید از برنامه نویس فرانت اند سوال کند تا بتواند راه را تشخیص دهد.
ممکن است برایتان این نیز سوال باشد که یادگیری تکنولوژی های ذکر شده، در چه حدی لازم است!
برای این سوال جواب ثابت و حد و اندازه ای وجود ندارد.
شما به هنوان یک برنامه نویس بک اند همین که بتوانید تقریبا 4 پروژه با تکنولوژی های ذکر شده پیاده سازی کنید کافی است و بعد از آن می توانید زبان بک اند خودتان را انتخاب کنید.
زبان برنامه نویسی سمت سرور چیست؟
همان طور که می دانید برنامه نویسی وب به دو قسمت فرانت اند (سمت کلاینت) و بک اند (سمت سرور) تقسیم می شود. فعالیت در هر کدام از این حوزه ها به علاقه و انتخاب شما بستگی دارد و در هر کدام از آن ها زبان های برنامه نویسی و تکنولوژی های مختلفی وجود دارد که باید فعالان و علاقمندان آن حوزه یاد بگیرند.
به زبان برنامه نویسی که به کمک آن می توانیم سمت سرور یک وب سایت را اپلیکیشن را پیاده سازی کنیم، زبان برنامه نویسی سمت سرور گفته می شود.
از زبان های برنامه نویسی که برای سمت سرور استفاده می شوند، می توان به PHP، پایتون، جاوا، سی شارپ، جاوا اسکریپت و … اشاره کرد.
در ادامه مقاله در مورد این زبان ها بیشتر صحبت خواهیم کرد.
یک برنامه نویس چه مهارت هایی باید داشته باشد؟
این سوال یکی از مهم ترین سوالاتی است که ممکن است برای شما پیش آمده باشد. شما به هر حوزه برنامه نویسی که علاقه داشته و قصد فعالیت در آن را داشته باشید، باید تخصص کافی را در ابزار ها و مفاهیم آن حوزه کسب کنید. بک اند چیست ؟
فعالیت در حوزه برنامه نویسی بک اند نیز تخصص هایی را می طلبد که از برخی از این تخصص ها می توان به موارد زیر اشاره کرد:
- دانش حداقلی از فرانت اند
- زبان برنامه نویسی و فریمورک مورد علاقه شما در زمینه بک اند
- گیت
- کار با دیتابیس
- API نویسی
- امنیت
- سوکت نویسی
- و …
البته این موارد فقط چند مهارت کلی برای یک برنامه نویس بک اند بود. برای کسب اطلاعات بیشتر در مورد مهارت های یک برنامه نویس بک اند و دریافت یک رودمپ خوب و اصولی برای بک اند، می توانید به وب سایت RoadMap.sh مراجعه کنید.
در ادامه نیز به برخی از این مهارت ها خواهیم پرداخت و در مورد آن ها صحبت می کنیم.
پایگاه داده (دیتابیس) چیست؟
کلمه پایگاه داده و دیتابیس نیز از جمله کلماتی هستند که ممکن است در حوزه برنامه نویسی وب به گوشتان خورده باشند.
دیتابیس یکی از مفاهیم و تکنولوژی هایی است که هر برنامه نویس بک اند با آن سر و کار دارد.
همان طور که بالاتر تفاوت وب سایت های استاتیک با وب سایت های داینامیک را متوجه شدیم، در وب سایت های داینامیک نیاز به جایی داریم که بتوانیم اطلاعات وب سایت را در آن قسمت ذخیره سازی کنیم. اطلاعاتی مثل مشخصات کاربران، محصولات، میزان خرید و فروش، مدیران سایت و … .
همه این اطلاعات در جایی به اسم دیتابیس ذخیره و مدیریت می شوند که پیاده سازی آن بر عهده برنامه نویس بک اند است.
دیتابیس های مختلف و متنوعی وجود دارند که از معروف ترین آن ها می توان به MySql, MongoDB, Sql Server, PostgresDB و … اشاره کرد. بک اند چیست ؟
ممکن است برایتان سوال باشد که هر زبان یک دیتابیس خاص دارد یا می توان با یک زبان به دیتابیس های مختلفی وصل شد!
دیتابیس فارغ و جدا از زبان برنامه نویسی شما است و شما می توانید با هر زبانی که برای سمت سرور کار می کنید، به هر دیتابیسی وصل شده و اطلاعات وب سایتتان را در آن ذخیره سازی کنید.
ممکن است برایتان سوال باشد که اطلاعات داخل دیتابیس در چه قالبی ذخیره سازی می شوند.
جالب است بدانید که ساختار هر دیتابیس صرفا با یک دیتابیس دیگر مشابه نیست.
به عنوان مثال قالب ذخیره سازی و نگهداری اطلاعات در دیتابیس Mysql متفاوت با دیتابیس MongoDB است.
همچنین دیتابیس ها به دسته های مختلف مثل رابطه ای، شی گرا و … تقسیم می شوند. به عنوان مثال ساختار دیتابیس Mysql به صورت رابطه ای است. دیتابیس های رابطه ای به دلیل ساختار منظم و خوانایی بالایی که دارند، محبوبیت زیادی دارند.
همچنین محبوب ترین و پر استفاده ترین دیتابیسی که وجود دارد همین دیتابیس Mysql است.
در قسمت بعدی نحوه ذخیره سازی و نگهداری اطلاعات در دیتابیس Mysql را مورد بررسی قرار می دهیم.
نحوه ذخیره سازی اطلاعات در دیتابیس Mysql
بک اند چیست ؟ در دیتابیس Mysql هر دسته از اطلاعات داخل تیبل (جدول) های مختص ذخیره سازی می شوند.
به عنوان مثال اطلاعات کاربران وب سایت در جدولی به اسم users، اطلاعات محصولات در جدول products و … ذخیره سازی می شوند.
نکته مهم این است که نام گذاری این جدول ها اختیاری بوده و اجباری در اسم آن ها وجود ندارند. به عنوان مثال شما می توانید اسم جدولی که اطلاعات کاربران را در آن ذخیره سازی می کنید، allUsers نیز بگذارید.
حال فرض کنید قصد داریم اطلاعات کاربران وب سایت ساده ای را در دیتابیس Mysql ذخیره سازی کنیم.
هر جدول در دیتابیس Mysql از چند سطر و ستون تشکیل شده است.
ستون ها همان ویژگی های هر آیتم مربوط به جدول بوده و سطر ها اطلاعات هر آیتم هستند.
حال از خود می پرسیم که هر کاربر چه اطلاعاتی نیاز دارد؟
هر کاربر در ساده ترین حالت اطلاعات آیدی، نام، نام خانوادگی و ایمیل را دارد.
پس همان طور که بالاتر توضیح داده شد، همین ویژگی ستون های جدول را تشکیل می دهند.
بعد تصویر زیر توجه کنید:
همان طور که مشاهده می کنید، ویژگی هایی مثل name, family, id و … ستون های این جدول را تشکیل داده اند.
حال موقع آن است وه اطلاعات هر کاربر را در این جدول وارد کنیم.
فرض کنید شخصی با اطلاعات اسم: علی، نام خانوادگی: حسینی، ایمیل: [email protected] و آیدی: 1 ذخیره کنیم.
به تصویر زیر دقت کنید:
همان طور که مشاهده می کنید این اطلاعات در یک سطر از جدول ذخیره سازی شده و هر اطلاعات از کاربر در زیر ستون مرتبط با خودش نوشته شده است.
حال فرض کنید کاربر دیگری در وب سایتمان ثبت نام کرده است و برنامه نویس بک اند موظف است تا اطلاعات شخص جدید را نیز در جدول users ذخیره کند.
به تصویر زیر دقت کنید:
همان طور که مشاهده می کنید، اطلاعات کاربر جدید زیر کاربر قبلی ذخیره شد.
همان طور که متوجه شدید درک دیتابیس و کار با آن کار بسیار شیرین و راحتی است. فقط کافی است به آن علاقه داشته باشید.
کدام تکنولوژی های بک اند بازار کار بهتری دارند؟
بک اند چیست ؟ همان طور که می دانید در حوزه های مرتبط با برنامه نویسی تفاوتی نمی کند که با چه زبان و تکنولوژی سر و کار دارید. اگر در تکنولوژی که با آن کار می کنید به سطح تخصص رسیده باشید، می توانید وارد بازار کار شده و درآمد های بسیار خوبی را کسب کنید.
اما امروزه موضوع بازار کار یکی از معیار های مهم هر شخصی است که قصد ورود به حوزه برنامه نویسی را دارد. اگر شما یک تکنولوژی را انتخاب کنید که نیاز به نیروی بیشتری در بازار کار برای آن باشد، فرصت های شغلی زیادی را در اختیار دارید و نگران سکونت در شهرستان، مهاجرت و … نیستید. همچنین اگر بعد از استخدام در یک شرکت به مشکلی برخوردید، با خیال راحت می توانید استعفا داده و در شرکت دیگری مشغول به کار شوید.
به همین دلیل در ادامه مقاله به مقایسه تکنولوژی مرتبط با بک اند از لحاظ بازار کار می پردازیم.
برای بررسی بازار کار این حوزه باید به منابعی که در حوزه بازار کار و استخدام فعالیت می کنند مراجعه کنیم. از این دسته وب سایت ها می توان به جاب ویژن، کوئرا، جابینجا، آی استخدام و … اشاره کرد.
تصاویر زیر از وب سایت جابینجا برای بازار کار تکنولوژی های برنامه نویسی PHP، پایتون، نود جی اس و ASP در کشور ایران می باشند:
همان طور که مشاهده می کنید زبان PHP بین تکنولوژی های موجود بیشتری تعداد آگهی شغلی را در بین رقبای خود دارد.
علاوه بر تعداد فرصت های شغلی، در مورد میزان حقوق پرداختی شرکت ها نیز می توانید در همین وب سایت جابینجا سرچ کرده و اطلاعات بیشتری در این زمینه به دست آورید.
مهارت های پایه برای یک برنامه نویس بک اند
بک اند چیست ؟ در قسمت های قبلی در مورد چند مورد از مهارت های اصلی یک برنامه نویس بک اند مثل زبان برنامه نویسی سمت سرور، دیتابیس و … صحبت کردیم که مهارت های فنی محسوب می شوند.
اما هر برنامه نویس بک اند علاوه بر مهارت های فنی، باید مهارت های پایه نیز داشته باشند.
همان طور که در مقاله های قبلی در مورد مهارت های پایه ای یک برنامه نویس فرانت اند صحبت کردیم، متوجه شدیم که یک برنامه نویس فرانت اند باید مهارت خلاقیت بالایی را داشته باشد.
به همین ترتیب یک برنامه نویس بک اند نیز باید قوه حل مسئله بالایی داشته و ذهن تحلیلگر داشته باشد.
اما شاید برایتان سوال باشد که این قوه حل مسئله از کجا به دست می آید!
شاید قبلا این جمله را شنیده باشید که “برای برنامه نویس شدن باید علم ریاضی را به خوبی بلد باشید”. این جمله دقیقا برای همین بحث قوه حل مسئله و ذهن تحلیلگر می باشد.
بلد بودن علم ریاضی و کار کردن با آن، قوه حل مسئله شما را تقویت می کند و در حوزه برنامه نویسی می توانید سریع تر و بهتر بحث یادگیری را پیش برده و سریع تر به مقصد برسید.
البته نگران نباشید. قرار نیست شما در حوزه برنامه نویسی بک اند از مباحث مربوط به ریاضی مثل مشتق، اتحاد، انتگرال و … استفاده کنید. فقط و فقط همان قوه حل مسئله و ذهن تحلیلگری که از حل مسائل مربوط به ریاضی به دست آورده اید، در یادگیری برنامه نویسی و فعالیت در این حوزه به شما کمک می کنند تا سریع تر به هدف برسید.
اما ممکن است برایتان سوال باشد که با این توصیفات برای ورود به حوزه برنامه نویسی حتما باید ریاضی بلد باشیم یا نه؟
جواب این سوال منفی است. برای ورود به حوزه برنامه نویسی هیچ گونه اجباری بر بلد بودن تخصصی ریاضی نیست. همان طور که بالاتر گفته شد، فقط به قوه حل مسئله نیاز دارید که این موضوع از راه ریاضی به راحتی کسب می شود.
اما اگر به ریاضی علاقه ای نداشته و آن را به خوبی بلد نیستید، نگران نباشید. خیلی از برنامه نویسان هستند که حتی نسبت به ریاضی حس منفی دارند.
چون که ریاضی فقط شما را سریع تر به مسیر می رساند و اجباری بر آن نیست.
اگر بخواهیم مثالی برای این موضوع بزنیم، فرض کنید که قصد دارید از شهر تهران به شهر تبریز مسافرت کنید. شما هم می توانید با هواپیما و هم با اتوبوس مسافرت خود را انجام دهید. پس برای این مسافرت اجباری بر وجود هواپیما نیست و هواپیما فقط شما را سریع تر به مقصد می رساند.
در بحث برنامه نویسی نیز ریاضی همان هواپیما است. اجباری بر آن نیست ولی وجودش شما را سریع تر به هدف رسانده و سرعت یادگیری شما را افزایش می دهد.
در کل اگر شما علاقه ای به علم ریاضیات ندارید، می توانید با حل کردن مسائل الگوریتمیک و مطالعه سوالات مسابقات ACM، قوه حل مسئله خود را تقویت کرده و در حوزه برنامه نویسی مشکلی نداشته باشید.
مفهوم API و Api نویسی برای برنامه نویس بک اند
اگر در حوزه برنامه نویسی وب فعالیت داشته باشید، قطعا کلمه API را شنیده اید و احتمالا مبحث سختی به نظر بیاید.
اما جالب است بدانید که مفهوم API و کار کردن با آن بسیار آسان بوده و هیچ گونه سختی ندارد.
شما زمانی که قدص دارید از اطلاعات یک سرور و وب سایت استفاده کنید، به اطلاعات آن دسترسی ندارید و مدیر آن وب سایت اطلاعات سرور خود را به طور کامل در اختیار شما قرار نمی دهد.
برای همین منظور یک API نوشته می شود تا برنامه نویسان بتوانند به اطلاعات مجاز آن وب سایت دسترسی داشته باشند.
به عنوان مثال وب سایت دیجی کالا را در نظر بگیرید. شما به اطلاعات محصولات، کاربران و … دیجی کالا دسترسی ندارید.
حال ممکن است قصد داشته باشید که از اطلاعات محصولات دیجی کالا استفاده کنید. برنامه نویس های بک اند دیجی کالا یک API نوشته و در اختیار شما قرار می دهند تا شما به کمک API به اطلاعات هر محصول مثل عنوان، قیمت، تعداد فروش و … دسترسی داشته باشید.
در کل API برای دسترسی به اطلاعاتی که خارج از سرور ما قرار دارند استفاده می شوند.
همان طور که متوجه شدید، Api توسط برنامه نویس بک اند نوشته می شود. اطلاعات در دیتابیس ذخیره می شوند و برای این که برنامه نویس فرانت اند به آن ها دسترسی داشته باشد، یک Api توسط برنامه نویس بک اند نوشته شده و در اختیار برنامه نویس فرانت اند قرار می گیرد و به این ترتیب برنامه نویس فرانت اند اطلاعات بک اند را از API گرفته و در وب سایت آن ها را نمایش می دهد.
نکته قابل توجه این است که علاوه بر برنامه نویس های بک اند، برنامه نویس های فرانت اند نیز باید نحوه کار با API را یاد بگیرند. چون دریافت اطلاعات از API در فرانت اند بر عهده آنها است و فقط نوشتن API بر عهده برنامه نویس بک اند می باشد.
پس در این قسمت مفهوم API را یاد گرفتیم و متوجه شدیم که یکی از مهارت های ضروری که هر برنامه نویس بک اند باید آن را بلد باشد، Api نویسی است.
در چه مدت زمانی می توان به بک اند مسلط شد؟
یکی از پر تکرار ترین سوالاتی که در حوزه برنامه نویسی پرسیده می شود، مدت زمان یادگیری است. خیلی از دوستانی که به تازگی وارد این حوزه می شوند، برایشان این سوال پیش می آید که “در چه مدت زمانی می توانم فلان تکنولوژی را یاد بگیرم و وارد بازار کار شوم؟”.
اگر صادقانه به موضوع نگاه کنیم، هیچ جواب دقیق و ثابتی برای این سوال وجود ندارد.
به عنوان مثال ممکن است یک شخص زبان برنامه نویسی جاوا اسکریپت را در 5 ماه در حد قابل قبول برای بازار کار یاد بگیرد و همچنین شخص دیگری در مدت زمان 10 ماه نتواند به طرح شخص اول برسد.
در اصل مدت زمان یادگیری هر شخص به پارامتر های مختلفی بستگی دارد.
از پارامتر هایی که در مدت زمان یادگیری شما تاثیر دارد، می توان به تایم روزانه شما برای تمرین، سطح تسلط شما در پیش نیاز ها، سطح تسلط شما در زبان انگلیسی، سطح علاقه شما، میزان تایمی که برای مطالعه رفرنس و داکیومنت اختصاص می دهید و … اشاره کرد.
پس به هیچ وجه در مورد مدت زمان یادگیریتان سوالی نپرسید و ذهن خود را مشغول نکنید. به جای پرسیدن این سوال، سعی کنید پارامتر های ذکر شده را تقویت کرده و رعایت کنید.
برنامه نویس بک اند باید امنیت هم کار کند؟
بک اند چیست ؟ میزان تسلط بر موضوع امنیت نیز یکی از پر تکرار ترین سوالاتی است که توسط دوستانی که به تازگی وارد این حوزه می شوند پرسیده می شود.
امنیت و تست نفوذ یکی از حوزه های مرتبط با برنامه نویسی است و نمی توان گفت یک برنامه نویس بک اند حتما باید یک امنیت کار هم باشد. اما به صورت کلی یک برنامه نویس بک اند باید حداقل مهارت های حوزه امنیت را بلد بوده و در پروژه های خود پیاده سازی کند.
به عنوان مثال یک برنامه نویس بک اند باید در در زمینه باگ های Xss، CSRF، Sql Injection و … Validation های مختلف اطلاعات کافی را داشته باشد.
برای یادگیری مباحث مورد نیاز امنیت در حوزه کاری خودتان، کافی است یک دوره امنیت در همان حوزه بگذرانید. به عنوان مثال اگر برنامه نویس بک اند هستید و با زبان برنامه نویسی PHP کار می کنید، اگر در یک دوره “امنیت در PHP” ثبت نام کنید کفایت می کند.
سخن پایانی
بک اند چیست ؟ در این مقاله سعی کردم در مورد بک اند صحبت کرده و به سوالات پر تکراری که در این حوزه پرسیده می شوند پاسخ دهم.برای درک بهتر و عمیق مباحث گفته شده ;i بک اند چیست ؟، پیشنهاد می کنم ویدئوی مقاله را نیز مشاهده کنید و در صورت وجود هرگونه سوال، انتقاد و پیشنهاد در قسمت کامنت های مقاله مطرح کنید. امیدوارم این مقاله برایتان مفید واقع شده باشد.
تا مقاله بعدی خدا یار و نگهدارتان.
محمدامین سعیدی راد.
مطالب زیر را حتما مطالعه کنید
نحوه نصب کتابخانه در پایتون | آموزش نصب کتابخانه پایتون
چگونه پایتون را آپدیت کنیم؟ | آموزش صفر تا صد آپدیت کردن پایتون
سریع ترین و بهترین راه یادگیری جاوا اسکریپت چیست؟ | تجربه برنامه نویسان
بررسی بازار کار جاوا اسکریپت | تمام روش های کسب درآمد از جاوا اسکریپت
معرفی بهترین دوره فرانت اند | دوره جامع فرانت اند
بررسی بازار کار فرانت اند | بازار کار فرانت اند در ایران چطور است؟
1 دیدگاه
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
دیدگاهتان را بنویسید لغو پاسخ
برای نوشتن دیدگاه باید وارد بشوید.
عالی بود مطلب