برنامه نویس وب و موبایل هستم. به بازارهای مالی (بورس ایران، فارکس، باینری آپشن) و برنامه نویسی مالی علاقه مند هستم.
شروعی برای برنامه نویس وب شدن
برنامه نویسی وب اولین تخصصی بود که شروع کردم و اگر شما هم میخواین برنامه نویس وب بشین پیشنهاد می کنم این مطلب رو بخونید.
اول اینکه دمتون گرم که میخواین برنامه نویس وب بشین چون جز افراد همه فن حریف در حوزه برنامه نویسی خواهید شد.
برنامه نویسی وب به دو دسته اصلی Front-end و Back-end تقسیم میشه و شما میتونید یکی از دو شاخه رو برای یادگیری انتخاب کنید.
برنامه نویس فرانت اند
همون طور که از اسمش پیداست مربوط به ظاهر و چیزی میشه که قابل مشاهده هست. تخصص این دست از برنامه نویس های وب کدنویسی و طراحی رابط کاربری وب سایت است یعنی ظاهر وب سایت و قسمت هایی که کاربر باهاش در ارتباط هست.
کدهای این بخش از وب سایت در مرورگر کاربر اجرا میشود و توسط کاربر قابل مشاهده هست که در اصطلاح بهش Client side programming هم گفته میشه.
برای شروع فرانت اند بهتره از یادگیری زبان های زیر شروع کنید. سعی کنید این زبان ها رو خیلی عمیق یادبگیرید چون پایه و اساس فرانت اند هستند:
- HTML
- CSS
- Javascrip
اگر با خوندن حال میکنید به نظرم بهترین وب سایت و منبع جامع وب سایت w3schools.com است. اگر با آموزش های ویدئویی راحت تر هستید پیشنهاد میکنم از دوره های آموزشی Lynda استفاده کنید.
منبع فارسی جامع ندیدم برای همین معرفی نمیکنم و بهتره از حضرت گوگل بپرسید (ایشان به تمام علوم داناست) وب سایت ها و آموزش های ویدئویی فارسی زیادی پیدا میکنید ولی پیشنهاد میکنم انگلیسی کار کنید.
این سه زبان برای شروع هست و برای حرفه ای شدن در این حوزه خیلی چیزای دیگه هست که باید یاد بگیرید. اگر تصویر زیر رو ببنید متوجه میشید که برای حرفه ای شدن در این زمینه چه ابزارها، فریم ورک ها و کتابخونه هایی رو میتونید یاد بگیرید.
برنامه نویس بک اند
دست های پشت پرده یک وب سایت توسط برنامه نویس های بک اند کدنویسی میشه. تخصص این برنامه نویس ها آماده سازی هسته اصلی و موتور وب سایت است. یعنی کدهایی که وظیفه ارتباط با دیتابیس، وب سرویس و... رو بر عهده داره. یک مثال ساده براتون میزنم:
فرم ثبت نامه و عضویت وب سایتی رو در نظر بگیرید چیزی که کاربر می بینه و فیلدهایی که اطلاعات رو داخلش وارد میکنه جز front-end محسوب میشه و بعد از اینکه کاربر دکمه عضویت و ثبت نام رو میزنه کار بخش back-end شروع میشه تا اطلاعات کاربر رو دریافت و پردازش و ذخیره کنه و کاربر در وب سایت عضو بشه.
این بخش از وب سایت قابل مشاهده نیست چون کدهای این بخش از وب سایت بر روی سرور اجرا میشوند و به اصطلاح گفته میشه Server side programming
برای یادگیری بک اند از کجا شروع کنیم؟
تصمیم گیری در این مورد نسبت به فرانت اند پیچیده تره بستگی به خیلی از مسائل داره. بیشتر وب سایت هایی که تا کنون طراحی راه اندازی شده اند از زبان PHP استفاده میکنند. در ایران هم پرطرفدار ترین زبان برنامه نویسی بک اند وب است.
بحث در این موضوع خیلی زیاده و تویه این مطلب فقط میخوام یه معرفی کلی و جامع داشته باشم.
برنامه نویس های بک اند لازمه مقداری در مورد فرانت اند هم اطلاعات داشته باشند و بهتره زبان های HTML, CSS رو یادبگیرند.
در حال حاضر پرطرفدارترین زبان های برنامه نویسی بک اند به ترتیب طبق تجربه خودم عبارتند از:
- PHP
- C#
- ECMAScript
- Java
- Python
- Ruby
- Go
در مطلب قبلی «چه زبان برنامه نویسی ای را برای یادگیری انتخاب کنیم؟» در مورد انتخاب زبان و معیار هایی که باید در نظر بگیرید توضیح مختصری دادم حتما مطالعه کنید.
خب تا اینجای کار شروع برنامه نویسی بک اند بود و حرفه ای شدن نیاز به یادگیری ابزارها، فریم ورک ها و... داره. تصویر زیر خلاصه ای از چیزهایی که یک برنامه نویس بک اند لازم داره ترسیم کرده:
نتیجه گیری
برنامه نویسی فرانت اند و بک اند هر دو خیلی گسترده هستند و به نظرم بک اند گسترده تره. برای همین برای شروع کار ابتدا یکی رو به صورت عمیق یادبگیرید و پیشنهاد من فرانت اند است چون شیرین تره و جذاب تر.
در مورد بازار کار و درآمد باید بگم که در هر دو زمینه فرانت و بک اند بازار کار و درآمد بستگی به سطح مهارت و تجربه شما دارد و من خودم نمی تونم مقایسه کنم که کدوم یکی بهتره! اگر بازار کار هدفتون ایران هست لازمه بدونید بهتره در فرانت اند و بک اند خوب باشید. چون تا الان بیشتر استخدامی هایی که دیدم هر دو مهارت رو نیاز داشتند! مورد بعد اگر در هر دو زمینه مهارت داشته باشید خب به تنهایی میتونید پروژه بگیرید و به عنوان یک برنامه نویس آزاد یا Freelancer فعالیت و کسب درآمد کنید. مسلما درآمد بیشتری نسیبتون میشه.
امیدوارم این مطلب به درد کسی بخوره. در مطالب بعدی سعی میکنم در مورد برنامه نویسی موبایل صحبت کنم. پایان.
مطلبی دیگر از این انتشارات
ساخت اپلیکیشن موبایل با استفاده از React native
مطلبی دیگر از این انتشارات
چطور یادگیری جاوا اسکریپت را شروع کنیم؟
مطلبی دیگر از این انتشارات
چه زبان برنامه نویسی ای را برای یادگیری انتخاب کنم؟