۷ مرحله برای تبدیل شدن به یک توسعه‌دهنده حرفه‌ای وب

شاید گمان کنید برای تبدیل شدن به یک توسعه‌دهنده حرفه‌ای وب، یادگیریHTML ، CSS و Javascript به همراه کتابخانه‌های مختلف و یا در نهایت یادگیری یک زبان سمت سرور مثل Python یا PHP کافی است. اما ماجرا به این سادگی نیست! هر ساله هزاران نفر، به عنوان توسعه‌دهنده وب وارد بازار کار می‌شوند و خاص بودن در بین آن‌ها به مهارت‌های بیشتری نیاز خواهد داشت. در این مقاله می‌خواهیم ۷ مهارت فنی را معرفی کنیم که توسعه‌دهنده‌های کم‌تجربه‌تر معمولاً آن‌ها را نادیده می‌گیرند اما یادگیری آن‌ها می‌تواند بسیار اثربخش و مهم باشد. برای هر کدام از این مهارت‌ها یک یا چند منبع خوب مطالعاتی نیز معرفی خواهیم کرد. دانش اولیه‌ای در مورد شبکه داشته باشیدمی‌دانید وقتی در مرورگر خود google.com را می‌نویسید و به جستجو می‌پردازید، در پشت پرده چه اتفاقی می‌افتد؟ دانش اولیه در زمینه شبکه و دانستن پاسخ سوال بالا، تفاوت‌های بسیاری را رقم می‌زند. چه چیزهایی باید یاد بگیرید؟آشنایی با نحوه عملکرد DNSنحوه رجیستر و استفاده از دامنه‌هادرک TCP/IPدیباگ کردن ابتدایی شبکهدرک ساز-و-کار VPN این دوره رایگان گوگل، می‌تواند زمینه‌ی خوبی برای یادگیری مباحث اولیه شبکه برای توسعه‌دهنده‌ها محسوب شود. یاد بگیرید HTTP چگونه کار می‌کند از آن‌جایی که HTTP یکی از کلیدی‌ترین پروتکل‌ها در دنیای وب است، یادگیری ساز و کار آن برای شما اهمیتی هدایی خواهد داشت. چه چیزهایی باید یاد بگیرید؟نحوه‌ی تبادل داده در HTTPآشنایی با درخواست‌های HTTP و نحوه‌ی استفاده از آن‌هاشناخت Response Codeهای اصلی و استفاده‌ی درست از آن‌هاپروتکل اصطلاحاً Stateless چیست و چرا اهمیت دارد؟شناخت و نحوه‌ی استفاده از Headerهای اصلیکار با HTTP خارج از محیط مرورگر اصطلاح SSL چیست، چرا و چطور باید از آن استفاده کرد؟منابع آموزشی در این زمینه بسیار زیاد است، به عنوانhttps://developer.mozilla.org/en-US/docs/Web/HTTPhttps://www.udacity.com/course/http-web-servers–ud303نحوۀ کار کردن با UNIX Shell را یاد بگیریداگر برنامه‌ی شما استفاده اختصاصی از ابزارهای مایکروسافت نباشد، به احتمال زیاد وبسایت و یا اپلیکیشن شما توسط یک سرور لینوکسی میزبانی می‌شود، بنابراین باید دانش کافی در این زمینه را داشته باشید. معمولاً برنامه‌نویس‌های تازه‌کار به دلیل آشنا نبودن، از کار با محیط command line اجتناب می‌کنند. این امری عادی شمرده می‌شود ولی اگر می‌خواهید متفاوت باشید، وقت آن رسیده تا رویکردتان را تغییر دهید.چه چیزهایی باید یاد بگیرید؟ دسترسی از راه دور با استفاده از SSHدستورات ابتدایی shellطریقۀ استفاده از grepآشنایی با ویرایشگرهای command line مثل Vimدرک مجوزهای دسترسی در فایل‌ها و نحوۀ تغییر آن‌هایادگیری متغیرهای محیطی (Environment Variables) و نحوۀ استفاده از آن‌هانحوۀ استفاده از bashrc.استفاده از package managerهایی مانند apt و yumطریقۀ پیدا کردن و خواندن logتوانایی مدیریت سرویس‌هایادگیری اسکریپت‌نویسی با Bashممکن است یادگیری UNIX Shell وقت زیادی از شما بگیرد ولی ارزش‌اش را دارد و قدرت زیادی در زمینه توسعه به شما می‌دهد. از اینجا می‌توانید به درس‌نامه‌ای در این زمینه که توسط Digital Ocean منتشر شده، دسترسی داشته باشید.نحوه کار با Git را فرا بگیریدیکی از مهمترین مهارت‌های توسعه‌دهندگان یادگیری یک سامانه مدیریت نسخه همچون Git است. با این حال، بسیاری از توسعه‌دهندگان تازه‌کار خیلی به سراغش نمی‌روند. استفاده از Git در خیلی از موارد می‌تواند کار ما را راحت‌تر سازد و مشکلات را تا حدی کاهش دهد. لازم‌به‌ذکر است که سامانه‌های مدیریت نسخه دیگری نیز مانند Mercurial و SVM وجود دارند ولی Git در بین آن‌ها اهمیت بیشتری دارد.چه چیزهایی باید یاد بگیرید؟دستورات ابتدایی مانند add ،init و commitتوانایی کار با مخازن remoteتوانایی استفاده از push ،pull و fetchتوانایی کار با branchها (create و merge)توانایی حل کردن Conflictهر چقدر که در کار کردن با Git مهارت بیشتری کسب کنید، همکاری با یک تیم چند نفره برایتان آسان‌تر می‌شود. در این زمینه می‌توانید این منبع از Atlassian را امتحان کنید و یا اگر آموزش تعاملی‌تری را ترجیح می‌دهید،try.github.io را امتحان کنید.با محیط Developer tools مرورگر آشنا شویدهمانند محیط ویرایشگر کد، این ابزار هم از مهمترین ابزارهای لازم برای توسعه‌دهندگان می‌باشد. اگر بتوانید به خوبی از امکانات Developer tools مرورگر خود استفاده کنید در رقابت با سایر توسعه‌دهندگان یک پله جلوتر خواهید بود.این ابزار به شما در Debug کردن، درک تأثیرات کدها، شناخت مشکلات Performance و… کمک بزرگی میکند. مرورگر Chrome به شکل خاص، قابلیت‌های بیشتری را در اختیار توسعه‌دهندگان قرار می‌دهد.چه چیزهایی باید یاد بگیرید؟استفاده از کنسول برای یافتن و دیباگ کردن کدهااستفاده از ابزار Inspection برای مشاهده و تغییر Markup و CSS در مرورگرنحوۀ Debug کردن Javascriptطریقه‌ی Inspect و Debug کردن درخواست‌های HTTPتجزیه و تحلیل وب‌سایت برای شناسایی مشکلات Performance آناگر از مرورگر کروم استفاده می‌کنید، می‌توانید این مقاله آموزشی آن‌ها را در زمینه Dev Tools ببینید.یک زبان برنامه‌نویسی جدید یاد بگیریدخیلی‌ها معتقدند که باید یک زبان برنامه‌نویسی را خوب فرا گرفت و با آن زیاد تمرین کرد. برای تبدیل شدن به یک توسعه‌دهنده‌ی خوب باید بدانید دقیقاً از چه چیزی در کجا استفاده کنید. فکر خوبی است که یک زبان برنامه‌نویسی جدید البته در دسته‌بندی جدید یاد بگیرید. برای مثال اگر مشغول یادگیری زبان Python هستید تا حد خوبی با قالب شیٔ‌گرا آشنا هستید پس چرا به سراغ زبان‌های تابعی (Functional) نروید؟! در زیر لیستی از زبان‌هایی ارائه شده که می‌توانند برای یادگیری زبان دوم مناسب باشند.چه چیزهایی می‌توانید یاد بگیرید؟HaskellScalaElmTypeScriptClojureGoKotlinBashفراموش نکنید که برای موفقیت به عنوان یک توسعه‌دهنده، یادگیری یک زبان جدید، به خودی خود اهمیتی ندارد. چیزی که مهم است این است که بتوانید افق‌های دید خود را گسترش دهید و بدانید که برای یک کار خاص، دقیقاً چه چیزی بهترین عملکرد را خواهد داشت.کامنت گذاری روی کدها را فراموش نکنیدکامنت‌گذاری روی کدها یکی از مهمترین نکاتی است که شما را تبدیل به یک توسعه‌دهنده‌ی حرفه‌ای می‌کند، پس کامنت کردن کدها را به درستی یاد بگیرید.جمع‎بندیقطعاً اهمیت دادن به مواردی که گفته شد، می‌تواند دید شما را نسبت به کدی که می‌نویسید و یا سایت و اپلیکیشنی که در حال توسعه آن هستید عوض کند، اما مواردی که در بالا توضیح داده شد از ملزومات و واجبات تبدیل شدن به یک برنامه‌نویس حرفه‌ای است. پس سعی کنید هرچه زودتر در راه پیشرفت خود قدم بردارید…Learning Web Development? These Skills Will Make You Stand Out @ FullBitکوئرامگ مجله‌ای تخصصی برای توسعه‌دهندگان است که هر هفته با مطلب‌هایی در زمینه تکنولوژی، رشد فردی و آینده برنامه‌نویسی به‌روزرسانی می‌شود. برای اطلاع از آخرین مطلب‌های ما، می‌توانید توئیتر یا کانال تلگرام کوئرا را دنبال کنید.