مسیر برنامه‌نویسی ۰۲ - انتخاب زبان و حوزه‌ی برنامه‌نویسی

برنامه‌نویسی وب؟ برنامه‌نویسی موبایل یا اصن جفتشون؟ بازی سازی؟ چه حوزه و زبانی رو برای شروع انتخاب کنیم؟توی این پست میخوایم به این سوال جواب بدیم.اگه حوصله‌ی خوندن نداری میتونی ویدئوی این پست رو از آپارات یا یوتیوب ببینی.confused developerسلام من عمادم. از کدتراپیبه قسمت دوم مسیر برنامه‌نویسی خوش اومدین. قبل از هر چیز خوشحال می شم که منو به دوستاتون معرفی کنین که مایه‌ی دلگرمیه.اگه قسمت‌های قبلی این مجموعه رو نخوندین میتونین از لینک‌های زیر مطالعه کنین.قسمت ۰ - برنامه‌نویس کیه و چیکار میکنه؟قسمت ۱ - مواد لازم برای برنامه‌نویسییکی از سخت‌ترین انتخاب‌ها برای برنامه نویسا انتخاب حوزه کاریه. معمولا برنامه‌نویسا عاشق یادگیرین و دوس دارن که بتونن توی همه‌ی زمینه‌ها کد بزنن و خودشون رو محدود نکنن. به طبع برای وارد شدن به هرکدوم از زمینه‌های برنامه‌نویسی باید کلی آموزش، تمرین و تکرار داشته باشین و اگه تازه میخواین برنامه‌نویسی رو شروع کنین شاید این حجم یادگیری ترسناک باشه.از کدوم بخش رو شروع کنم؟زمانی میخوایم وقت و انرژی‌مون رو توی کاری سرمایه گذاری کنیم، اول باید جواب یه سری سوالا رو بدونیم.بازار کارش چطوره؟چقد زمان برای یادگیری میخواد؟سختیش چقدره و چقدر انرژی ازم میبره؟ولی از همه‌ی اینا مهم‌تر اینه که علاقه داری توی کدوم زمینه کار کنی و فکر میکنی توی کدوم زمینه موفق تری؟ در نهایت من یا هر کس دیگه‌ای میتونیم بهت بگیم که برای رسیدن به هدفت از چه مسیری بری و چه ابزاری رو استفاده کنی. اونی که تصمیم نهایی رو میگیره خودتی بجز خودت هیچ‌کس جواب این سوال رو نمیدونه.برنامه‌نویسی دسکتاپ یا Desktop Developmentبرنامه نویسی دسکتاپ به برنامه‌هایی که روی ویندوز، لینوکس و مکینتاش اجرا میشن اشاره می‌کنه. می‌تونی با استفاده از زبان هایی مثل جاوا، سی شارپ، پایتون و... که اغلب کراس پلتفورم هستن برنامه بنویسی. در مورد بازار کاری این زمینه هم باید بدونید که نسبت به باقی زمینه‌ها ضعیف‌تری داره.برنامه‌نویسی وب یا Web Developmentاین روزا همه‌چیز داره به سمت وب پیش میره. از درس خوندن تا تاکسی گرفتن و غذا سفارش دادن. مسلما برنامه‌نویسی و طراحی وب آینده‌ی درخشانی داره. برنامه‌نویسی وب به دو بخش اصلی FrontEnd (Client Side یا سمت کابر) و BackEnd (Server Side یا سمت سرور) تقسیم میشه.بریم سراغ FrontEnd. بخوام خیلی کلی بگم، برنامه‌های فرانت‌اند میشه چیزی که کاربر باهاش تعامل داره و میبینه و روی مرورگر اجرا میشه. اولین چیزایی که باید یاد بگیرین HTML و CSS و JavaScript هستن. بعد از اون میتونین یه فریم‌ورک مثل React یا Vue یا Angular رو انتخاب کنین و باهاش وب اپ بسازین.برنامه‌های بک‌اند برنامه‌هایی هستن که روی سرور اجرا میشن و حکم مغز وب‌سایت‌ها رو دارن. وقتی توی سایتی ثبت نام میکنین، وقتی با اسنپ غذا سفارش میدین، این اطلاعات توسط بک‌اند مدیریت میشه. با زبان‌های مختلفی میشه برای بک‌اند برنامه‌نوشت که از جمله‌ی اونا میشه به Python، Java، PHP، Ruby، Js و ... اشاره کرد.برنامه‌نویسی موبایل یا Mobile Developmentمیشه گفت تعداد کسایی که تلفن هوشمند ندارن کمتر از یک درصد هست و اگه برای ۹۹ درصد باقی‌مونده برنامه‌ای بنویسی مسلما ازش استقبال میشه. محبوب‌ترین سیستم‌عامل‌های موبایل، Android و IOS هستند و توی ایران برنامه‌نویسی اندروید نسبت به IOS محبوب‌تره و بازار کار بهتری داره. برای اندروید باید Java یا Kotlin رو یاد بگیرین (Kotlin جدیدتر و و ساده تره )برای IOS هم باید Objective-C یا Swift رو یاد بگیرین (فک کنم Objective-c داره منقرض میشه)توی برنامه‌نویسی یه مفهومی به اسم Cross Platform وجود داره و به این معنیه که با یه Code Base میتونی برای سیستم‌عامل‌های مختلف خروجی بگیری. فریم‌ورک‌های مختلفی وجود‌ داره که میشه با یه کد، هم برای IOS و هم Android خروجی بگیری مثل React Native، Flutter، Xamarin،طراحی و توسعه‌ی بازی یا Game Developmentبخش بزرگی از بازار برنامه‌ها رو بازی‌ها تشکیل میدن و یکی از صنعت‌های پول‌ساز در دنیا هم هست. اگه مایل هستین که بازی سازی رو شروع کنین باید C++ یا C# رو انتخاب کنین. مسلما میشه با زبان‌های دیگه هم بازی نوشت ولی این دوتا زبان توی Unreal Engine و Unity استفاده میشه.به نظر من بهتره که اول یادگیری یک زمینه خاص برنامه‌نویسی رو شروع کنیم. چندین پروژه و نمونه کد بنویسیم و بعد از اینکه توی اون زمینه استاد شدیم،‌ سراغ زمینه‌های دیگه بریم.با همه‌ی این حرفا و ابزار‌ها شما کدوم زمینه رو برای برنامه‌نویسی انتخاب میکنین؟ اگه برنامه‌نویسی می‌کنین توی چه زمینه‌ایه و با چه زبانی کد میزنین؟ توی کامنت‌ها برام بنویسین.مرسی که تا آخر این پست باهام همراه بودین.شاد و خندون باشین.