۰۰/۴/۱۹ شنبه
این روزها فناوری در زندگی همه ما نقش مهمی را بازی میکند. از یک خرید سوپرمارکتی که به خاطر شیوع کرونا رواج پیدا کرده است تا عملیاتهای پیچیدهتر مثل احراز هویت مجازی. این موضوع باعث شده کارآفرینان و تولیدکنندگان در تلاش باشند که خدماتشان را به صورت آنلاین و در بستر وب عرضه کنند. بنابراین فرصت خوبی پیش میآید که علاقهمندان به حوزه برنامه نویسی، حساب جداگانهای روی برنامه نویسی وب باز کنند.
در پستهای قبلی بلاگ پلازیکا در مورد «7 دلیل مهم برای یادگیری برنامه نویسی» و «یادگیری برنامه نویسی، سریع و بدون درد و خونریزی» صحبت کردیم. این بار میخواهیم در مورد شاخههای گوناگون برنامه نویسی صحبت کنیم تا شما بتوانید بهتر مسیر یادگیری خود را مشخص کنید.
در حوزههای مختلف علم کامپیوتر به جای برنامهنویسی بهتر است از واژه «توسعه» استفاده کنیم. زیرا فرایند ساخت و پیادهسازی یک برنامه (چه یک وبسایت باشد، چه یک نرم افزار یا غیره) فرایندی گستردهتر از برنامهنویسی است. یک توسعه دهنده، بسته به حوزه فعالیتش، باید علاوه بر برنامهنویسی مهارتهای دیگری چون کار با پایگاههای داده، تست و بررسی برنامه و پشتیبانی از برنامههایی که قبلا توسعه داده شده را داشته باشد.
وقتی از توسعه وب حرف میزنیم، منظورمان کل فرایندی است که به ساخت یک وب سایت یا اپلیکیشن بر بستر اینترنت یا اینترانت (اینترنت خصوصی) میانجامد. توسعه وب شامل مراحل دیزاین و طراحی سایت ها نمیباشد، بلکه فقط فرایند برنامهنویسی آن را در برمیگیرد.
از سادهترین وب سایتها، یعنی وب سایتهای ایستا (یا استاتیک) بگیر تا پلتفرمهای شبکههای اجتماعی، سایتهای تجارت الکترونیک (ecommerce) و سیستمهای مدیریت محتوا (CMS)، همه ابزارهایی که بر بستر اینترنت از آنها استفاده میکنیم توسط توسعه دهندگان وب ساخته شدهاند.
فرایند توسعه وب به سه بخش تقسیم میشود: بخش سمت کلاینت یا فرانتاند(Front-End)، بخش سمت سرور یا بکاند (Back-End) و پایگاه داده.
قسمتی از سایت که کاربران به طور مستقیم با آن تعامل دارند، فرانتاند نامیده میشود. همچنین به این قسمت، بخش سمت کلاینت برنامه نیز گفته میشود. این بخش شامل همه چیزهایی است که کاربر به طور مستقیم با آنها سر و کار دارد. مثل: رنگ و فونت متنها، تصاویر، جدولها و نمودارها، فرمها، دکمهها و غیره. ساختار، طراحی، رفتار و محتوای هر چیزی که روی صفحه مرورگر در هنگام باز شدن وب سایت، اپلیکیشن وب و یا اپلیکیشن موبایل دیده میشود، توسط یک توسعه دهنده فرانتاند پیادهسازی شده است. ریسپانسیو بودن و عملکرد درست دو هدف اصلی توسعه دهنده فرانتاند میباشد. توسعه دهنده فرانتاند همواره باید اطمینان حاصل کند که سایت در نمایشگرهایی با اندازههای مختلف، درست نمایش داده میشوند و همه بخشهای سایت عملکرد درستی از خود نشان میدهند.
بیشتر بخوانید: 10 دلیل برای یادگیری جاوا اسکریپت
برنامهنویسی سمت سرور یا توسعه بکاند، مربوط به پشت صحنه سایتها میشود. به طور کلی بکاند قسمتی از سایت است که کاربر آن را نمیبیند. برنامه نویس بکاند وظیفه دارد دادهها را مرتب و سازماندهی کند و اطمینان حاصل کند که همه چیز سمت کلاینت درست پیش میرود. مثلاً فرض کنید کاربر وارد سایتی میشود و قصد دارد یک حساب کاربری در آن بسازد.
در فرمی که در بخش فرانتاند سایت پیاده سازی شده است، اطلاعات خودش را وارد میکند و دکمه ثبت نام را میزند. با زدن این دکمه، بکاند اطلاعات کاربر را به سمت سرور ارسال میکند. پس از دریافت موفقیت آمیز اطلاعات، سرور پیامی مبنی بر انجام عملیات ارسال میکند که بکاند این پیام را برای فرانتاند میفرستد. فرانتاند هم پیام «عملیات با موفقیت انجام شد» را برای کاربر نمایش میدهد.
همانطور که در ابتدای مقاله اشاره کردیم، با شیوع کرونا بازار کار برنامه نویسی، به خصوص برنامهنویسی وب بیش از پیش داغ شده است. کارآفرینان، تولید کنندگان و حتی مدیران بیزنسهای مختلف تلاش میکنند تا فعالیتهایشان را به بستر وب منتقل کنند. همین موضوع باعث شده استفاده از خدمات آنلاین در بین قشرهای مختلف جامعه ترویج یابد. رضا شرفی در مقالهای در صفحه ویرگولش ۴۲۰۰ آگهی از سایت جابینجا را بررسی کرده است تا به این سؤال پاسخ دهد که بازار کار برنامه نویسی با چه زبانی داغتر است؟
این مقاله را میتوانید از اینجا بخوانید: وضعیت بازارکار زبان های برنامه نویسی در ایران
همانطور که در نمودار مشاهده میکنید، جاوا اسکریپت در رتبه اول و PHP در رتبه سوم این بررسی قرار دارد. همین موضوع نشان میدهد که بازار کار توسعه وب نه تنها اشباع نشده که هنوز داغ داغ است.
در اوایل سال ۱۴۰۰ گزارشی توسط سایت جاب ویژن منتشر شد. دادههای این گزارش از نظر سنجیای که توسط این سایت از ۴۱۰۰۰ نفر در ۶۰ گروه شغلی و ۷۰ گروه شغلی صورت گرفته بود به دست آمده است.
این گزارش را میتوانید از اینجا دانلود کنید: گزارش سراسری میزان افزایش حقوق کارکنان در سال 1400
با توجه به اطلاعات موجود در صفحههای ۵۷ تا ۵۹، در آمد برنامهنویسان مبتدی Junior) (فرانتاند بسته به محل زندگی به طور متوسط بین ۲٫۴ میلیون تومان (شهرهای کوچک) تا ۴٫۲ میلیون تومان (شهرهای بزرگ) و در آمد برنامهنویسان میانرده Mid-level) (و ارشد (Sinior) بسته به محل زندگی به طور متوسط بین ۳٫۶ میلیون تومان (شهرهای کوچک) تا ۶٫۵ میلیون تومان (شهرهای بزرگ) میباشد؛ البته میزان درآمد به مقدار زیادی به سابقه کار و مهارتهای دیگر نیز بستگی دارد، با این حال این آمار دید کلی خوبیای در مورد درآمدی که یک برنامه نویس فرانتاند باید انتظار داشته باشد به او میدهد.
همچنین با توجه به اطلاعات موجود در صفحههای ۳۸ تا ۴۰ که به بررسی درآمد برنامه نویسان زبان PHP پرداخته است، درآمد برنامهنویسان مبتدی Junior) (PHP به طور متوسط ۴٫۲ میلیون تومان و در آمد برنامهنویسان میانرده Mid-level) (و ارشد (Sinior) بسته به محل زندگی به طور متوسط بین ۵٫۸ میلیون تومان تا ۱۰ میلیون تومان میباشد؛
البته میزان درآمد به مقدار زیادی به سابقه کار و مهارتهای دیگر نیز بستگی دارد، با این حال این آمار دید کلی خوبیای در مورد درآمدی که برنامهنویسان میتوانند انتظار داشته باشند به آنها میدهد.
زهرا، برنامهنویس فرانتاند میگوید: بازار کار برنامهنویسی فرانتاند خوب است و با شیوع کرونا بهتر هم شده است. این روزها شرکتها ترجیح میدهند تیمشان به صورت دورکاری کار کنند که این موضوع باعث شده تا کسانی که مهارت خوبی در این زمینه دارند اما پایتخت نشین نیستند نیز بتوانند فرصتهای شغلی خوبی به دست آورند.
در مورد مهارت های نرمی (Soft Skills) که برنامهنویسان فرانت باید داشته باشند، زهرا به مهارت کار گروهی، روابط عمومی بالا، انتقاد پذیری اشاره میکند و به موقعیتی اشاره میکند که «ممکن است یک دیزاینر بخواهد قسمتی از سایت را تغییر دهد و شما به عنوان یک برنامهنویس فرانتاند باید به کدهایی مراجعه کنید که ماهها پیش آنها را نوشتهاید و آنها را بنابر به سلیقه دیگران تغییر دهید.» همچنین میگوید:« به نظر من هر برنامهنویسی باید همزمان شجاعت ابراز نظرات خود و توانایی احترام به نظرات مخالف را داشته باشد.»
افراد زیادی برای شروع برنامهنویسی از یادگیری زبانهای HTML، CSS و جاوا اسکریپت آغاز میکنند. زیرا هم این زبانها کلید ورود به دنیای برنامهنویسی وب و ساخت و طراحی وب سایت هستند و هم یادگیریشان بسیار ساده است.
اگر شما هم جزو افرادی هستید که عاشق ساختن دکمهها، طراحی لندینگ پیجهای خلاقانه، اضافه کردن لینکها و تصاویر و به طور خلاصه سر و کله زدن با لایهها و المانهای طراحی وب هستند، از همین الان شروع به یادگیری برنامهنویسی وب کنید.
پیشنهاد میکنم از اینجا شروع کنید: ۶ پروژه ساده و رایگان برای تمرین برنامهنویسی به زبانهای HTML، CSS و جاوا اسکریپت
مطالب زیر هم در حوزه برنامهنویسی از دست ندهید حتماً به دردتان میخورد:
میخواهید بدانید بهترین زبان های برنامه نویسی ۲۰۲۲ کدام زبانها هستند؟ مطلب زیر را بخوانید.
بهترین زبان های برنامه نویسی ۲۰۲۲
اما اگر تازه میخواهید وارد دنیای برنامهنویسی شوید باید بدانید بهترین زبان برنامهنویسی برای شروع کدام زبانها هستند. مطلب زیر را بخوانید.
بهترین زبان برنامهنویسی برای شروع
اگر میخواهید همه چیز درباره برنامه نویسی دسکتاپ، تعاریف، زبان ها، بازار کار و درآمد را بدانید مطلب زیر را بخوانید.
همه چیز درباره برنامه نویسی دسکتاپ، تعاریف، زبان ها، بازار کار و درآمد
در مورد خودتان برای ما بگویید. باتوجه به مطلبی که خواندید به نظر شما برنامهنویسی وب برای شما مناسب است یا خیر؟ اگر برنامهنویس وب هستید در مورد وضعیت کارتان و بازار کارش برایمان در قسمت نظرات بنویسید. به نظر شما یک برنامهنویس وب باید چه مهارتهای نرمی داشته باشند؟
در حال انجام عملیات