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

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

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

 

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

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

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

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

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

3
Leave a Reply

avatar
2 Comment threads
1 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
3 Comment authors
طراحی سایت در مشهدadminصراف زاده Recent comment authors
  Subscribe  
newest oldest most voted
Notify of
صراف زاده
Guest
صراف زاده

سلام . لطفا آموزش های stm32f0 رو آغاز کنید ✌ منتظریم

طراحی سایت در مشهد
Guest
طراحی سایت در مشهد

ممنون مطلبون خیلی کمک کرد