نکات برنامه نویسی : نام‌گذاری معنی‌دار

نام‌گذاری معنی‌دار-مارتین فولر-دیجیلاگیست

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

 

تا حالا پیش آمده که بعد از مدت‌ها به سراغ یکی از پروژه‌هایتان بروید و کارکرد متغیرها برایتان ناآشنا باشد؟ حتی شاید این مشکل در طی انجام یک پروژه نسبتاً بزرگ اتفاق افتاده باشد. در این حالت بعد از کلی سروکله زدن و تحلیل کدهایتان، احتمالاً فهمیدید که آن متغیر ناشناخته چه کاری انجام می‌دهد. برای اینکه دچار چنین مشکلی نشویم، چه کنیم؟

شاید پیشنهاد دهید که کامنت بگذاریم و در خصوص کدها و متغیرها توضیح بنویسیم. من هم با شما موافقم و کامنت‌گذاری را از واجبات می‌دانم. اما نباید فراموش کنیم که کامنت گذاریِ بیش از حد هم می‌تواند موجب سردرگمی شود. گرچه شاید بد نباشد هنگام تعریف متغیرها، در خصوص کارکردشان کامنت کوتاهی بگذاریم اما پیشنهاد بهتری هم وجود دارد که می‌تواند متغیرها را برای ما شفاف‌تر کند. تا حدی که نیاز نباشد حتی کامنت مربوط به آن متغیر را بخوانیم.

نام‌گذاری معنی‌دار:

کافی است هنگامی که می‌خواهید متغیر، تابع یا … را تعریف کنید، از نامی استفاده کنید که درآینده به شما کمک کند کارکرد، نحوه استفاده و دلیل به وجود آمدنش را به خاطر بیاورید. لازم نیست خیلی نگران طول نام باشید. اجازه ندهید که ترس طولانی شدن نام، مانع از شفاف‌تر شدنش شود. برای مثال به جای آنکه نام یک متغیر که قرار است زمان طی شده را در خود نگه دارد، T1بگذارید آن را elapsedTimeInDays نام‌گذاری کنید.

گاهی اوقات ممکن است کارکرد یک متغیر از همان ابتدا مشخص نباشد و با جلو رفتن پروژه نام‌های بهتری به ذهنمان برسد. هیچ اشکال ندارد که این نام بهتر را جایگزین کنیم. نام‌گذاری باکیفیت، نیاز به وقت گذاشتن و فکر کردن دارد. اما قطعاً این وقت به نسبت آن انرژی و زمانی که باید در آینده، در صورت رعایت نکردن این قاعده هدر دهیم، بسیار به صرفه‌تر است. 

2 نظر / نظر خود را در زیر وارد کنید

    1. سلام مهندس
      به روی چشم. مدتی درگیری زیاد داشتم که باعث شد به تاخیر بیفته. ولی به زودی سعی میکنم بروز کنم.

دیدگاهتان را بنویسید

پنج × 5 =