هشت ویژگی مهم برنامهنویسی با کیفیت
امروزه نرمافزارها در همه جا موجود هستند و در اکثر وسایل ما از کامپیوترها تا ماشینها و حتی یخچالها بکار میروند. ولی همه کدهایی که در این راستا تولید میشوند یکسان نیستند. برنامههای نرمافزاری مختلف حتی آنها که برای یک منظور مشترک طراحی شدند، میتوانند در کیفیت کدنویسی متفاوت باشند. تعریف کد خوب چیست؟ برنامهنویسان پاسخهای مختلفی برای این سؤال دارند. ویژگیهای بسیاری برای کیفیت خوب ذکر شده است. ما در اینجا هشت ویژگی مهم که از بین فرومهای آنلاین در پاسخ به سؤال ” چه چیزی یک کد خوب را میسازد؟” استخراج شده است، را ذکر کردیم.
1. کد صحیح اجرا شود
نرمافزارها معمولا برای یک منظور خاص طراحی میشوند و در اولین قدم ضروری است که آن منظور برآورده شود. بعضی برنامهنویسان بر این باورند که نیازی به طرح این مورد نیست. درحالی که سایرین احساس میکنند هنوز لازم است ذکر شود که اولین نکته برای یک کد خوب این است که کار کند. اگر کدی نیازهایی که اساسا برای آن طراحی شده را برآورده نکند، قطعا کد خوبی در نظر گرفته نمیشود.
به قول یک برنامهنویس ” کد زیبای خوانا، تستپذیر و نگهداشتپذیر که کار نمیکند، یک شکست است.”
2. خوانایی آن بالا باشد
برنامهنویسان اتفاقنظر دارند که یکی از مهمترین ویژگیهای کیفی کد خوانایی آن است. کدی که فهم آن برای سایر برنامهنویسان با حداقل زمان و تلاش امکانپذیر است، درجه یک است. نامگذاری مناسب، جریان کنترل شفاف( Clear Control Flow )، استفاده هوشمندانه از توضیحات( Comments ) همگی کمک میکند تا خوانایی کد بهتر و نگهداری، توسعه و استفاده مجدد از آن آسانتر شود.
به قول یک برنامهنویس “هر چه یک فرد سریعتر بتواند با نگاه کردن به کد آن را بفهمد، نرمافزار سریعتر رو به جلو حرکت میکند. “
3. تستپذیر باشد.
توسعه دهندگان نرمافزار عموما معتقدند که یک نیاز مهم برای یک نرمافزار با کیفیت بالا تستپذیری آن است. به عبارت دیگر کدی که به گونهای نوشته شده که تستهای واحد( Unit Test ) اتوماتیک میتواند بر روی آن اجرا شود تا مطمئن شود به درستی عمل میکند، کد خوبی است.
[برای اطلاعات بیشتر درباره تست واحد میتوانید به اسلایدهای جاواکاپ درباره JUnit مراجعه کنید.]
4. نگهداری آن آسان باشد.
مهم نیست چقدر یک قطعه کد خوب نوشته شود، زیرا خطاهایی که باید اصلاح شود پیدا خواهد شد. سهولت( یا سختی)کار بستگی به مواردی مانند خوانایی، تغییرپذیری و سادگی دارد. از دید بسیاری از کدنویسان کدی که نگهداری آن آسان باشد، کد با کیفیتی است.
5. نگاه کردن به آن خوشایند باشد.
درست است که نگاه کردن به کد ارتباطی با کارکرد آن ندارد، ولی همچنان برای برنامهنویسان مهم است. استفاده از فرمتهای مناسب مانند فاصله، دندانهگذاری( Indentation ) و رعایت حروف بزرگ و کوچک( Capitalization ) میتواند درک و خوانایی یک برنامه نرمافزاری را آسانتر کند. بسیاری برنامهنویسان معتقدند که ظاهر بهتر، کد باکیفیتتر است.
به قول یک برنامهنویس”کدی که ظاهر زیبا دارد غالبا کیفیت بهتری هم دارد. منطقا نباید ولی اینگونه است. ”
6. تغییر دادن آن آسان باشد.
یک قطعه کد در آینده نیاز به تغییر، توسعه و یا استفاده مجدد دارد. کد خوب معمولا کدی است که با حداقل تلاش ممکن قابل تغییر باشد. بسیاری برنامهنویسان کدهایی را دوست دارند که تغییر آن بدون عوارض جانبی باشد.
به قول یک توسعهگر ” شما واقعا نمیدانید یک کد چقدر خوب است تا زمانیکه تلاش کنید آن را تغییر دهید. ”
7. ساده باشد.
یک قطعه کد ممکن است کارهای پیچیدهای انجام دهد ولی بهترین کد غالبا از نگاه برنامهنویسان بسیار ساده است. جلوگیری از حلقههای تو در تو و if/elseهای بزرگ، کوتاه و متمرکز نگه داشتن توابع و سایر بلاکهای کد از جمله این موارد است. بهترین برنامهنویسان میدانند چطور این امر را بدون پیچیده کردن کارها انجام دهند.
یک نقل قول از یک برنامهنویس میگوید:” هر تابع دقیقا یک کار انجام میدهد. ”
8. کارامد باشد.
برای بعضی برنامهنویسان بهترین کد، کدی است که سریع اجرا شود و از حداقل منابع سیستم استفاده کند. کارامدی زمان اجرا به خصوص برای نرمافزارهایی که کارهای محاسباتی زیادی دارند، مثل در محاسبات علمی مهم است.
یک نقل قول دیگر میگوید: “زمان اجرای سریعتر اغلب با خوانایی کد همراه است. یک تعادل که بعضی برنامهنویسان مایلند ایجاد کنند. ”
منبع:www.itworld.com