تا به حال در وبسایت راکت نقشه راههای گوناگونی را برای تبدیل شدن به توسعه دهنده در بخشهای مختلف منتشر کردهایم. بیشتر این نقشه راهها یا در زمینه توسعه دهنده Front-End بوده و یا در زمینه توسعه دهنده Back-End. این مقاله یک نقشه راه دیگر برای تبدیل شدن به یک توسعه دهنده Front-End است. اما تفاوت این مقاله با دیگر مقالات این است که تا به حال ما چنین موضوعی را به صورت اختصاصی برای شرایط ایران در نظر نگرفتهایم. به همین دلیل این بار قصد داریم کمی متفاوتتر عمل کنیم.
در این مقاله از وبسایت راکت قصد داریم شما را به صورت مرحله به مرحله به سوی تبدیل شدن به یک طراح وبسایت و توسعه دهنده فرانت-اند سوق داده و در نهایت با استفاده از منابع داخلی وبسایت و البته منابع خارجی شما را به یک توسعه دهنده فرانت-اند تبدیل کنیم.
بگذارید یک چیز را از همین ابتدا به شما متذکر شوم. یکی از مهارتهای برنامه نویسی/کدنویسی که همواره میتواند برای شما حاوی فرصتهای شغلی بسیار زیاد باشد، توسعه دهنده فرانت-اند است. اما چرا؟ زمانی که شما در زمینه توسعه Back-End کار میکنید همواره تکنولوژیها و زبانهای برنامه نویسی بسیار زیادی وجود داشته و به همین دلیل اگر شما متخصص یک زبان خاص باشید، فرصتهای شغلی برای شما محدود میشود.
اما توسعه دهندگان Front-End تقریبا ۵۰ درصد ابزارهایشان با همدیگر مشترک بوده و تنها در زمانی که با کتابخانههای جاوا اسکریپت روبرو میشویم تفاوتهایی ایجاد میشود. به همین دلیل توسعه دهندگان Front-End میتوانند کار مورد نظر خود را بسیار سریعتر از دیگر توسعه دهندگان پیدا بکنند. در ارتباط با کتابخانه جاوا اسکریپتی نیز نگران نباشید. در انتهای این مقاله متوجه خواهید شد که برای بازار کار ایران چه تکنولوژیهایی شما را به یک شغل با حقوق مناسب نزدیک میکند.
اما قبل از هر چیزی بیایید به صورت مختصر به وظایف و کارهایی که یک توسعه دهنده فرانت-اند انجام میدهد نگاهی بیاندازیم و سپس سراغ دیگر بخشهای مهم مقاله خواهیم رفت.
طراح وبسایت یا توسعه دهنده Front-End کیست؟
در کشور ما توسعه دهندگان Front-End را در بیشتر اوقات همان طراح وبسایت مینامند. هر چند براساس ترجمه عبارت Web Designer این عنوان چندان درست نیست اما خب به ناچار باید با این اشتباه زندگی کنیم.
هدف یک توسعه دهنده Front-End این است که رابط کاربری طراحی شده در یک نرم افزار گرافیکی مانند ایلستریتور یا Adobe XD را برای یک مرورگر به واقعیت تبدیل بکند. اما این تنها بخشی از ماجرا است. از زمانی که توسعه اپلیکیشنهای تعاملیتر بازار را دست خود گرفتهاند وظایف یک توسعه دهنده Front-End بیشتر شده است. همین موضوع باعث میشود که یک طراح وبسایت با یک توسعه دهنده Front-End متفاوت باشد.
در واقع مسئولیتهای یک توسعه دهنده Front-End بسیار بیشتر از چینش المانها و کدنویسی HTML/CSS است. با ظهور تکنولوژیهای مبتنی بر جاوا اسکریپت، کارهای یک توسعه دهنده Front-End پیچیدهتر شده و در نهایت نیاز دارد تا موضوعات بیشتری را یاد بگیرد و از آنها کار بکشد.
چگونه به یک توسعه دهنده فرانت-اند تبدیل شویم؟
برای تبدیل شدن به یک توسعه دهنده فرانت-اند نسبتا مسیر طولانی را باید طی کنید. در این مسیر همواره سه چیز ثابت و اصولی وجود دارد. این سه مورد عبارت است از HTML، CSS و Javascript. در واقع این سه مورد تکنولوژیهایی هستند که دنیای وب براساس این موارد زنده بوده در نتیجه بدون استفاده کردن از این موارد نخواهید توانست یک وبسایت با کارایی بالا را ایجاد کنید. بیایید به صورت خلاصه به هر کدام این موارد یک نگاهی بیاندازیم:
HTML – پایه و اساس هر وبسایتی را تشکیل میدهد. در واقع فونداسیون یک وبسایت توسط HTML پیادهسازی شده و این اولین قدم برای ایجاد هر شکل از وبسایتی است.
CSS – همه چیز در ارتباط با این تکنولوژی مربوط به استایل دهی، زیباسازی و مرتب کردن المانها است. تصور کنید یک متن در HTML نوشته و حال میخواهید فونت و اندازه آن را تغییر داده و همچنین آن را از قسمت چپ وبسایت به قسمت راست بیاورید. برای انجام چنین کاری از CSS استفاده خواهید کرد.
Javascript – هیچ کدام از موارد بالا یک زبان برنامه نویسی نیستند. اما این قضیه در ارتباط با جاوا اسکریپت متفاوت است. در واقع اگر بخواهیم درستتر صحبت بکنیم باید بگوییم که دنیای وب یک زبان برنامه نویسی ثابت همواره داشته و آن جاوا اسکریپت نام دارد. جاوا اسکریپت به شما اجازه میدهد تا وبسایتها را از حالت ایستا و ثابت به یک حالت تعاملیتر و زندهتر تبدیل کنید.
سراغ کتابخانهها برویم
پس از یادگیری اصلیترین تکنولوژیهایی که دنیای وب را ایجاد میکنند نیاز است که سراغ کتابخانهها و چهارچوبهایی برویم که براساس تکنولوژیهای CSS/JS ایجاد شدهاند. هدف استفاده از این کتابخانهها بیشتر این است که کارها را سریعتر و با دقت بالاتر انجام دهیم. در واقع کتابخانههای CSS/JS چیزی نیستند جز مجموعهای قطعه کد که توسط توسعه دهندگان دیگر نوشته شده و حال شما میتوانید از آنها در فرایند توسعه وبسایت استفاده بکنید.
در ایران، بیشتر مواقع از دو کتابخانه CSS استفاده میشود. Tailwind CSS و Bootstrap. البته این نکته را بگویم که CSS دهها کتابخانه دیگر را نیز شامل میشود. اما اگر شما قصد دارید به سرعت یک فرصت شغلی را شکار کنید روی یکی از این دو مورد سرمایه گزاری کنید. Tailwind CSS توانسته در بین این دو بیشترین کارایی را از خود نشان بدهد.
داستان جاوا اسکریپت و کتابخانههای آن کمی با CSS متفاوت است. جاوا اسکریپت حاوی کتابخانههای بسیار زیادی بوده که هر کدام اهداف و کارایی خاص خود را دارند. در بین تمام کتابخانههای Javascript سه مورد از همه موارد پیشرفت بیشتری داشته و کاربران بیشتری را به خود اختصاص دادهاند. VueJS، ReactJS و AngularJS نام این سه کتابخانه هستند. در کشور ایران VueJS و ReactJS بیشترین کاربرد را داشته و افراد و شرکتهای زیادی را به خود اختصاص دادهاند. هر دو این کتابخانهها فرصتهای شغلی عالی را دارند اما اگر دنبال درآمد بالا هستید بهتر است سراغ ReactJS بروید.
پیش پردازنده CSS را فراموش نکنید!
همانطور که گفته شد CSS یک زبان برنامه نویسی نیست و به همین دلیل ممکن است در برخی از مواقع کار کردن تنها با CSS کمی دردسر آفرین و شلوغ کاری باشد. به همین دلیل پیش پردازندهها ایجاد شدند. هدف پیش پردازندهها این است که بتوانند به توسعه دهندگان اجازه بدهد تا کدهای CSS را ارتقا داده و از برخی از حالتهای برنامه نویسی مانند متغیرها و شرطها استفاده بکنند.
در ایران محبوبترین پیش پردازنده CSS، SASS نام دارد. البته چند پیش پردازنده دیگر نیز مانند SCSS و LESS وجود دارد اما در حال حاضر بیشتر فرصتهای شغلی، توانایی در نوشتن کدهای SASS را به عنوان یک ضرورت در نظر گرفتهاند.
ابزارهای جانبی و عمومی!
منظور از این ابزارها، دستهای از نرم افزارها هستند که جنبه عمومی داشته و انتظار میرود که هر توسعه دهندهای کار با آنها را بلد باشد. در ارتباط با این موضوع ما میتوانیم به چند ابزار مهم در این لیست اشاره کنیم:
Git-Github: گیت و گیتهاب دو ابزار بسیار مهم در جامعه توسعه دهندگان ایران و جهان است. با استفاده از گیت شما میتوانید به سادگی اپلیکیشنتان را نسخهبندی کرده و آنها را کنترل کنید. گیتهاب نیز به عنوان یک گیت آنلاین شناخته میشود اما کارهای بیشتری نیز میتوان با آن انجام داد.
خط فرمان یا Terminal: کار با خط فرمان و آشنایی با دستورات کامند-لاین یا ترمینال همواره یکی از نقاط قوت شما به حساب میآید. اگر بتوانید به خوبی با محیط متنی ارتباط برقرار کنید میتوانید بسیاری از کارهایتان را با سرعت بیشتری انجام دهید.
ویرایشگر: آشنایی با کارایی یک ویرایشگر یا IDE بدون شک باید یکی از تواناییهای شما باشد. در ایران بیشترین ویرایشگری که در زمینه توسعه فرانت-اند مورد استفاده قرار میگیرد ویرایشگر VSCode است.
و نکته آخر: دست از یادگیری برندارید!
مواردی که در این مقاله به آنها اشاره شد تنها تکنولوژی و ابزارهایی هستند که به صورت کلی باید آنها را در نظر گرفت. برای بدست آوردن یک فرصت شغلی عالی شما چیزهای بسیار زیاد دیگری را باید یاد بگیرید. به شما اطمینان میدهم که با یادگیری این موارد خودتان میتوانید مسیر درست را پیدا کرده و تکنولوژیهای وابسته به این موارد را برای یادگیری انتخاب کنید. مهمترین نکته برنامه نویسی و دنیای کامپیوتر را فراموش نکنید: هیچگاه دست از یادگیری برندارید!
دیدگاه و پرسش
در حال دریافت نظرات از سرور، لطفا منتظر بمانید
در حال دریافت نظرات از سرور، لطفا منتظر بمانید