نگاهی به کتاب Clean Code: راهنمای اجایل توسعهٔ نرم‌افزار

نگاهی به کتاب Clean Code: راهنمای اجایل توسعهٔ نرم‌افزار

Robert C. Martin، مؤسس و مدیر شرکت Uncle Bob، برای سال‌های طولانی در زمینۀ مشاورۀ توسعهٔ نرم‌افزار از عملکرد بسیار موفقی برخوردار بوده است؛ به‌علاوه، ایشان مطالعات موردی متعددی در رابطه با برنامه‌نویسی انجام داده است که در نتیجه، وی در سال 2009 کتاب Clean Code را توسط انتشارات Prentice Hall به چاپ رسانید که با اقبال خوبی مواجه شد.

ممکن است کدهای بد هم بازده داشته باشند و کار برنامه‌نویس را راه بیاندازند، اما به‌ کار گرفتن کدهای نامناسب، می‌تواند یک شرکت بزرگ را کاملاً به زمین بزند! هر ساله زمان بسیار زیاد و منابع هنگفتی صرف رفع ضررها و زیان‌های ناشی از به‌کارگیری کدهای غیرحرفه‌ای در برنامه‌نویسی می‌شود.

رابرت سی مارتین -متخصص مطرح در زمینۀ برنامه‌نویسی- در کتاب Clean Code: A Handbook of Agile Software Craftsmanship مبحثی کاملاً نو و انقلابی در رابطه با کدنویسی ارائه کرده است. مارتین با جمعی از دیگر همکارانش از مؤسسهٔ Object Mentor کار خود را شروع کردند و از این طریق، به‌تدریج بهترین روش‌های کدنویسی را که عملاً به‌کار گرفته می‌شود، در کتاب فوق‌الذکر جمع‌آوری نمودند.

این کتاب نکات مورد نیاز برای تبدیل شدن به یک استاد مسلط بر برنامه‌نویسی را در اختیار مخاطب قرار می‌دهد؛ البته این مهم درصورتی اتفاق می‌افتد که به‌عنوان مخاطب، بر روی مباحث کتاب کار کرده و صرفاً روزنامه‌وار آن‌ها را نخوانید.

اما چه‌طور می‌بایست با این کتاب تمرین کرد؟ در پاسخ به این سؤال بایستی گفت که شما تعداد بسیار زیادی سورس‌کد را در این کتاب می‌بینید و می‌خوانید؛ سپس به چالش کشیده می‌شوید تا کدهای مناسب و درست را گزینش کنید و سپس کدهای اشتباه را کنار بگذارید. فراتر از این، با استفاده از این کتاب، برای ارزیابی مجدد ارزش‌ها و تعهدات حرفه‌ای خود در کارتان به چالش کشیده می‌شوید.

این کتاب به ۳ بخش تقسیم شده است؛ بخش اول به اصول، نمونه‌ها، و روش‌های کدنویسی می‌پردازد. بخش دوم به مطالعات موردی مختلف در رابطه با پیچیدگی فزاینده در دنیای کدنویسی اختصاص داده شده است (هر مطالعۀ موردی در واقع تمرینی برای انتخاب کد مناسب است؛ به این معنی که چگونه کد نامناسب و دارای مشکل را به کد مفید و کارآمد تبدیل کنیم.) و سومین بخش کتاب، نتیجۀ نهایی مبحث کتاب است، یعنی لیستی از نکات و مواردی که در پروسۀ انجام مطالعات موردی، استخراج و جمع‌آوری شده است.

مهم‌ترین دستاورد مخاطب بعد از خواندن این کتاب، کسب دانش عالی برای فکر کردن، نوشتن، خواندن کد، و انتخاب کدهای مناسب است؛ توانایی‌هایی که مخاطب بعد از خواندن این کتاب به‌دست می‌آورد عبارتند از:

- چگونگی تشخیص کد خوب از کد بد
- چگونگی نوشتن کد خوب و چگونگی تبدیل کد بد به کد خوب
- چگونگی انتخاب نام مناسب، ایجاد بازده مناسب، اهداف مناسب، و دست‌بندی‌های مناسب
- چگونگی قالب‌بندی کدها برای بالا بردن قابلیت خواندن آن‌ها
- چگونگی رفع کامل خطاها بدون بروز مشکل در منطق سورس‌کد
- چگونگی انجام آزمایش برای تشخیص کد مناسب، و اعمال روش برنامه‌نویسی آزمون‌محور

خواندن این کتاب برای هر دولوپر، مهندس نرم‌افزار، مدیر پروژه، سرپرست تیم، یا تحلیگر سیستم که تمایل به ایجاد کدهای بهتر و  پربازده‌تر داشته باشد، ضروری است.

منبع