注释 —— 《clean code》读后感
???? 注釋并不一定都是好的,事實上,在實際開發過程中,注釋還很可能是壞的。因為代碼可能一直在變,在多久以后,代碼也許已經面目全非,而工程師往往只顧改代碼,卻并不會去同步更新注釋。注釋可能在腐化的過程中,變得越來越名不符實,給工程師以錯誤的向導。也正是因為如此,如果注釋做得不好,往往還會失去注釋的意義,迫使工程師不得不每次都重新過代碼,不相信滿嘴謊言的注釋。
???? 高質量的注釋有以下原則:
1)不要依賴注釋,更好的做法是提高代碼的表達能力——好的命名,簡短的函數都可以幫助做到。如果能用改善代碼的方式解決的,都不要用注釋去解決。什么也不會比亂七八糟的注釋更有本事搞亂一個模塊,什么也不會比陳舊、提供錯誤信息的注釋更有破壞性。真實可靠的地方只有一個:代碼。
2)注釋不能美化糟糕的代碼。別給糟糕的代碼加注釋——重新寫吧。
3)不要給復雜的代碼配以注釋,干脆把代碼封進一個短小的函數里,然后給函數起一個清晰易懂的名字。
不好的:
// check to see if the employee is eligible for full benefits
if((employee.flags & HOURLY_FLAG) && (employee.age>65) )
好的:
if(employee.isEligibleForFullBenefits())
如果是ruby這種可以帶謂語的語言,你甚至可以給斷言加?號。
4) 好注釋包括哪些呢? 法律信息這種必須有的注釋、對復雜代碼實現方法的解釋(解釋你的意圖)、警示(非常重要的地方,加以提醒)。
5)不好的注釋呢? 喃喃自語(含糊不清,完全寫給自己看的,別人很難看懂的)、多余的注釋(從代碼上一眼就能看出作用的注釋,完全是廢話)、誤導性注釋、注釋信息過多
6)有些注釋我們可以利用版本控制軟件完成,沒必要在代碼中再表現了。例如:代碼的最后修改時間,修改的人,修改的地方等等。
轉載于:https://www.cnblogs.com/cly84920/archive/2010/03/29/4426812.html
總結
以上是生活随笔為你收集整理的注释 —— 《clean code》读后感的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [你必须知道的css系列]第一回:丰富的
- 下一篇: IE6不能用gzip压缩脚本,一个流毒甚