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