اظهار نظر کد: توضیح دهید که چرا ، نه چه

من عاشق کد خوب هستم و توسط مهندسان که با مانترا “نظر کمترین حد ممکن” زندگی می کنند ، کمی گیج شده ام. شاید من فقط کد بد زیادی را نوشتم ، و وقتی به عقب نگاه می کنم به بازپرداخت آن کمک می کنم ، به طرز چشمگیری کمک کرده است!
آنچه تعریف می کند خوب کد ، هر چند؟ در تجربه من ، نکته اصلی توصیف است چرا شما کاری را که انجام دادید انجام دادید چه تو کردی
بیایید مقایسه کنیم
if (x === 0) {
displayTheComponent();
}
چه نظری برای این ممکن است: “اگر x 0 است ، مؤلفه را نمایش دهید”
چرا اظهار نظر برای این امر ممکن است این باشد: “اگر کاربر تا به حال خرید نکرده است ، ما یک مؤلفه ویژه UI را به آنها نشان می دهیم که برخی از مزایای خرید را توضیح می دهد”
بدیهی است ، این یک نمونه مهم است اما امیدوارم که این مفهوم را توضیح دهد. اولین آنچه نظر برای هر کسی که بیش از یک هفته تجربه مهندسی داشته باشد کاملاً بی فایده است. ما می توانیم به کد نگاه کنیم و بگوییم چه این کار را انجام می دهد چرا نظر بهتر است اگر از این پس دو سال به این کد برگردیم و تعجب کنیم ، “چرا این کار را کردیم؟” ما می دانیم!
دفعه بعد که در حال بررسی یک روابط عمومی هستید ، فقط از طریق کد قدیمی سر و صدا می کنید ، یا هنگامی که کد ناآشنا را اصلاح می کنید ، به روند فکر خود توجه کنید. من فکر می کنم متوجه خواهید شد که اغلب از خود می پرسید ، “چرا ما اینجا این کار را می کنیم؟”
آنچه گاهی در سناریوهای پیچیده مفید است
چه نظرات می تواند هر از گاهی مفید باشد. به ویژه هنگامی که کد پیچیده می شود ، برخی از نظرات در اینجا پاشیده می شوند و ممکن است مفید باشد. من دوست دارم از مناطق با کد مناسب برای سازماندهی کد پیچیده استفاده کنم و اغلب می نویسم چه نظرات در آن مناطق:
#region get user data
#endregion
#region transform user data
#endregion
من دوست دارم تصمیم شما را در مورد کد اظهار نظر بشنوم. سبک ها و عقاید مختلفی وجود دارد که هنوز هم در ذهن من بحث باز است چه چیزی در یک سناریوی تیم بهترین کار را انجام می دهد!