بلاگ شخصی مصطفی کلانتری فرد

بلاگ شخصی مصطفی کلانتری فرد

نقشه راه تبدیل شدن به یک برنامه نویس Back-end

نقشه راه تبدیل شدن به یک برنامه نویس Back-end

۲۱ مرداد ۱۳۹۹
| توسط مصطفی
| 2576بازدید
| بدون دیدگاه

نقشه راه تبدیل شدن به یک برنامه نویس Back-end

سلام. توی پست قبلی به طور مفصل "نقشه راه تبدیل شدن به یک برنامه نویس Front-end" رو توضیح دادم. در این پست قصد دارم به نقشه راه برنامه نویسی سمت سرور یا Back-end بپردازم. بنابراین اگر شما مسیر برنامه نویسی سمت سرور و یا تبدیل شدن به یک برنامه نویس Full-stack رو پیش گرفتید، مطالعه این مطلب برای شما ضروری هست.

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

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

البته این رو در نظر داشته باشید که برای تبدیل شدن به یه متخصص Back-End، در آینده یادگیری و تسلط بر چند زبان سمت سرور الزامی هست و یادگیری شما به PHP ختم نمیشه.


مسیر تبدیل شدن به یک برنامه نویس Back-end مبتدی تا حرفه‌ای

برای تبدیل شدن به یک برنامه نویس سمت سرور حرفه‌ای، گام به گام با من همراه باشید وبه این نکته توجه کنید که یادگیری این مباحث کاملا به هم پیوسته هست و تا زمانی که در یک مرحله مهارت های کافی رو کسب نکردین، به سراغ مرحله بعد نرید!


گام اول – آشنایی مقدماتی بر Front-End

وقتی حرف از تبدیل شدن به یک متخصص Back-End میشه، به این معنی نیست هیچ اطلاعاتی از برنامه نویسی فرانت اند نداشته باشید! بر خلاف نظر بسیاری از برنامه نویسان بک‌اند، یکی از الزامات ورود به این حوزه داشتن اطلاعات کافی در زمینه فرانت اند هست.  به شخصه پیشنهاد میدم تا حد امکان با زبان های نشانه گذاری HTML و CSS و حتی یک فریم ورک CSS همچون Bootstrap آشنا باشید و توانایی تشخیص و اعمال تغییرات جزئی توی قالب های استاتیک رو داشته باشید.


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

از جمله زبان های سمت سرور که می‌تونید یادگیری اون ها رو شروع کنید، زبان های PHP، C#، Python Ruby و Node.js هست. با توجه به تجربه و تخصص چند ساله‌ای که دارم، من در این مسیر به معرفی گام به گام مراحل تبدیل شدن به یک برنامه نویس‌بک اند با زبان قدرتمند PHP می‌پردازم.


گام سوم – یادگیری و کار با بانک اطلاعاتی MySql

این گام، رابطه مستقیمی با گام دوم داره. آشنایی و یادگیری کار با بانک اطلاعاتی همزمان با یادگیری PHP باید انجام بشه، چراکه یک زبان برنامه نویسی سمت سرور بدون بکارگیری بانک های اطلاعاتی، شما رو به نتایجی که باید برسید نمیرسونه. بهتر بود این گام با گام دوم یکی میشد، اما با توجه به اهمیتی که یادگیری بانک اطلاعاتی داره، ترجیح دادم این رو به عنوان یک گام مجزا تعریف کنم.


گام چهارم – انتخاب و یادگیری یک فریم‌ورک PHP

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

بنابراین بعد از تسلط بر زبان PHP، باید یک فریم‌ورک رو برای افزایش کیفیت، سرعت و امنیت سایت هاتون انتخاب کنید. فریم‌ورک ها شما رو وادار به کدنویسی در یک چارچوب خاص و البته منظم میکنن که این کار باعث افزایش بهره‌وری و سرعت عملکرد شما میشه. همچنین استفاده از فریم‌ورک ها امکان تعامل شما با سایر برنامه نویسان در کارهای تیمی رو فراهم میکنه.

فریم ورک های PHP بسیاری از جمله Laravel، Symfony، CodeIgniter، CakePHP و غیره وجود دارن، اما در این مسیر من به شما یادگیری فریم‌ورک قدرتمند Laravel رو پیشنهاد میدم.

برای آشنایی و مقایسه فریم های PHP این مطلب رو در وب روبیک مطالعه کنید.


گام پنجم – یادگیری و تسلط بر Version Control

این گام، یک گام مشترک بین برنامه نویسی فرانت‌اند و بک‌اند هست. حتی میشه گفت یادگیری ورژن کنترل برای یک برنامه نویس سرور به مراتب مهم‌تر هست. زمانی که شما در حال پیاده سازی وب سایت هستید، احتمال اینکه با خطاهایی مواجه بشید و قصد بازگشت به چند مرحله قبل رو داشته باشید وجود داره. فرض کنید شما در هر مرحله از پیاده سازی، یک کپی از نتایج کار تا اون لحظه رو نگه دارید. زمانی که با مشکلی مواجه بشید اگر قصد بازگشت به مرحله مورد نظر رو داشته باشید، تشخیص اینکه کدام فایل ها بروزرسانی شدن و چه تغییراتی در پروژه اعمال شده، بصورت دستی کاری نشدنی هست. با استفاده از Version Control میتونید به سادگی به مراحل یا ورژن های قبلی مراجعه، تغییرات رو شناسایی و یا برای بازگشت به اون مرحله اقدام کنید.


گام شش – پیش به سوی مباحث تخصصی

برنامه نویسی، یکی از حوزه های بی‌نهایت هست که هرچقدر هم اطلاعات بیشتری کسب کنید و مباحث بیشتری یاد بگیرید تمامی نداره! بعد از پشت سر گذاشتن پنج گام قبلی و تسلط کافی بر اون‌ها، شما به سادگی میتونید پروژه های برنامه نویسی سمت سرور رو دریافت کنید و یا در شرکت های مختلف و با حقوق متناسب استخدام بشید.

با این حال، اگر قصد دارید بیشتر از این در حوزه برنامه نویسی BackEnd غرق بشید، ورود به این حوزه های تخصصی رو پیشنهاد میکنم.

  • یادگیری کار با API ها – REST  / JSON APIs / SOAP / Authentication
  • کسب دانش الگورتیم های امنیت وب – SHA Family / scrypt / bcrypt
  • موتورهای جستجو – Elasticsearch / Soir

و یادگیری رو ادامه بدین...


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



نظر خود را ارسال کنید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *