۶ گام برای نوشتن کدهایی بهتر
در هر هفته کاری از من اینطور انتظار می رود که حداقل چندصد خط کد با حدودا چهار زبان مختلف بنویسم. در کدهای نوشته شده توسط سایر همکاران نیز از من انتظار مشارکت و ویرایش میرود.
در حالت کلی، کدهای زیادی در اطراف من یافت میشوند و همه چیز میتواند بسیار پیچیده باشد به خصوص اگر آن ها بخوبی مدیریت و مرتب نشوند و اینکه خوب نیز نوشته نشده باشند. اجازه دهید نگاهی داشته باشیم به چند روش که درحالت کلی کیفیت کدهای ما را افزایش میدهد.
نویسنده اصلی این نوشته را با تمرکز روی توسعه دهندگان فرانتاند وب نوشته و مطالب ممکن است برای سایر توسعه دهنده ها قدری نامفهوم باشد.
۱. شروع کنید به ساختن ماژول ها
یکی از بهترین راه ها برای افزایش سازگاری و قابلیت استفاده مجدد و مرتب نگه داشتن کدها، گروه بندی توانایی های مرتبط باهم در دستهبندی های مشخص است. برای مثال فرض کنید بجای آنکه تمام کدهای جاوا اسکریپت خود را در فایل main.js بنویسید، کدها را در فایل ها و گروه های مختلف بر اساس کاربرد آنها قرار دهید و سپس آنها را در مرحله ساخت باهم ترکیب کنید. البته که این تمام مفهوم ماژولاریتی نیست. البته میتوانید هرچیز دیگری جز جاوا اسرکریپت را هم ماژولار بنویسید.
پیش پردازنده های css، مانند sass امکان نوشتن استایلها در فایلهایی جدا و سپس ترکیب آنها در فایل اصلی و کامپایل آن به css را در اختیار شما قرار میدهند. این قابلیت اجازه میدهد که برای بخشهای مختلف، مانند دکمه ها، لیست ها و فونتها در فایل های css مجزا استایل بنویسید. در پایان همه آنها به فایل اصلی اضافه میشوند و نگهداری این کدها هم بسیار آسانتر میشود.
تکنولوژی های جدید مانند Polymer نیز امکان نوشتن المان های شخصی شده HTML را میدهند.
پس HTML، فایل های CSS و جاوا اسکریپت میتوانند در کامپوننتت های جدا از هم بر اساس کاربرد خود دسته بندی شوند.
برد فراست یک مرور عالی بر ایده ها و روش شناسی های نوشتن برنامه های ماژولار دارد. بیشتر بخوانید …
۲. از پیش پردازنده ها استفاده کنید
کار پیش پردازنده ها صرفا کمک به برنامه نویسی ماژولار نیست، آن ها کاربردهای بسیار بیشتری دارند!
پیش پردازنده ها قابلیت های بسیار زیادی به کدهای شما میبخشند درحالی که خروجی کدشان همان خروجی مورد انتظار مرورگرها است. گرچه معمولا زمان بیشتری برای نصب نیاز دارند اما پیش پردازنده ها برای راحتی کار شما ساخته شده اند.
پیش پردازنده ها با حذف کدهای تکراری زمان کد نویسی را کاهش میدهند و همچنین دارای قابلیت های مفیدی مانند متغیرها، توابع، حلقه ها و سینتکس ساده هستند. بیشتر پیش پردازندهها قابلیت شخصی سازی بالایی دارند. بسیاری از آنها گزینه هایی را برای تنظیمات خروجی دلخواه، استفاده از پلاگین ها، افزونه ها و همچنین هشدارهای شخصی شده در جاهای لازم در اختیار شما میگذارند.
پیش پردازنده های معروف جامعه کاربران بزرگی دارند که مشکلات، خطاها و باگها را به سرعت حل میکنند و پاسخ به مشکلات هم در آنها سریع انجام میگیرد.
برای شروع کار با پیشپردازندههای معروف CSS، HTML و جاوا اسکریپت از این لینک ها استفاده کنید : Sass ، Haml و کافیاسکریپت
اجباری در استفاده از پیش پردازنده ها نیست اما انها میتوانند در نوشتن کدهای بهتر به شما کمک کنند.
۳. قبل از نوشتن برنامه ریزی کنید
آخرین باری که وقت گذاشتید و مسیر رسیدن به اهداف پروژه را روی کاغذ نوشتید دقیقا کی بود؟ از چه فریم ورک هایی میخواستید استفاده کنید؟ چه مرورگرهایی قرار بود پشتیبانی شوند؟ آیا به استفاده از یک تسک راننر در روند پروژه اندیشیده بودید؟ انجام پروژه ای که پیش از شروع، برنامه ریزی شده باشد بسیار راحتتر از این است که میانه راه متوجه شوید کاری را انجام نداده اید و تمام پروژه را به عقب برگردانید و دوباره بنویسید.
North مجموعهای از راهنماهاست که در برنامه ریزی پروژه به شما کمک میکند. نورث در یک سند طولانی و جامع بیان میکند: فقط نباید روی کدنویسی تمرکز شود بلکه فاکتورهای زیادی را باید از شروع پروژه وبسایت در نظر گرفت.
تصمیم گیری برای انتخاب ابزارها و کتابخانه های مناسب یک تصمیم چالش بر انگیز است. زیرا که ابزارها و کتابخانه های جدید هر روز بیشتر میشوند. برای همین لیستی تدارک دیدهام که به شما کمک میکند بهترین و مناسب ترین ابزارهای کارتان را انتخاب کنید، پس وقتی برای پروژه بعدی خود برنامه ریزی میکنید با خیال راحت از آن استفاده کنید.
۴. از ابزارهای کنترل نسخه استفاده کنید
ابزارهای کنترل نسخه سیستم هایی هستند که تغییرات فایل یا مجموعه ای از فایل ها را بررسی میکنند، اجازه مشارکت چندین کاربر را میدهند، تغییرات را ذخیره میکنند و از Asset های شما میزبانی میکنند .سرویس های زیادی هستند که ابزارهای کنترل نسخه را ارائه میدهند مانند بیتباکت و گیتهاب. من خودم به گیتهاب علاقه دارم به این دلیل که کدنویسی اجتماعی را رواج میدهد. به این معنی که افراد میتوانند کدهای خو را روی گیتهاب منتشر کنند و کدهای دیگران را نیز بهبود دهند و از آنها یاد بگیرند.
کنترل نسخه ممکن است کمی پیچیده بنظر برسد، اما آموزش های بسیاری برای شروع کار با آنها در اینترنت موجود است. بیشتر بخوانید..
یک توصیه : از خط فرمان استفاده کنید. خط فرمان ممکن است رابط ترسناکی داشته باشد اما شروع کار با آن میتواند درک شما از برنامه نویسی را بهبود بخشد و همچنین از طرفی ابزارهایی مانند گرانت را تنها در خط فرمان میتوانید اجرا کنید.
۵. بررسی کدها
بررسی کدها در یک تیم بسیار آسان است اما به این معنی نیست که به تنهایی نمیشود انجامش داد. ایده بررسی کد این است که کدهایی را که نوشته اید با عده ای از همسالان (هم سطحان) خود مرور کنید که شما میتوانید تشریح کنید که کدتان چه کار میکند، یاد بگیرید چگونه بهتر بنویسید و همچنین به دیگران تکنولوژی های مورد استفاده خود را اموزش دهید.
بهتر است این کار را بصورت هفتگی انجام دهید با هدف اینکه کدنویسی خود را بهبود بخشید.
اگر شما عضو یک تیم نیستید یا خیلی درونگرا هستید، JSLint و SCSSLint میتوانند برای شما مفید باشند. این ابزارها کدهایتان را به دنبال خطاها چک میکنند و همزمان آنها ر اشسته و رفته نگه میدارند. هیچ ارتباط انسانی هم نیاز نخواهید داشت!
۶. در چالش های کدنویسی شرکت کنید
خودسنجی های فراوانی در سراسر اینترنت برای توسعه دهنده ها ایجاد شده که باعث میشود نگاه بهتری به زبانی که با آن هرروز برنامه مینویسند داشته باشند. بسیاری ازین وبسایت ها جامعه بزرگی از کاربران هستند که به یکدیگر در موقع لزوم کمک میکنند پس نگران در راه ماندن و ناتوانی در ادامه چالش ها نباشید.
کدوارز برای تقویت جاوااسکریپت شما عالیست و The Practise App به شما چالش های تصادفی معرفی میکند که روی کدپن بسازید.
خلاصه
تداوم در اجرای روش های یاد شده در متن، روی توسعه و تقویت اجرای پروژه ها در شما بسیار مفید واقع خواهد شد پس اگر این هدف شماست، کمی برای آن ها وقت بگذارید.
منبع : SitePoint