注釋并不是純?nèi)坏暮?/p>
? ?“代碼與注釋”的關(guān)系削饵,我誠然的多次聽到這樣的一種說法岩瘦,“盡量每個函數(shù),都寫上詳細(xì)的注釋窿撬,這樣以后別人接收就很容易理解启昧。”其實劈伴,這樣的說法存在弊端密末。
? ? ?首先要明確一點,注釋到底是干什么用的跛璧。注釋的恰當(dāng)用法是彌補我們用代碼表達(dá)意圖時遭遇的失敗严里。換句話說,有意義的命名才是根本之道追城,如果我們無法準(zhǔn)確的找到有意義的命名刹碾,那么注釋可以增加代碼的可理解性。注釋不可以濫用座柱,也不可以過度的依賴注釋迷帜。其實,我一直認(rèn)為辆布,代碼根本不需要注釋瞬矩,因為注釋存在,是因為我們找不到對命名的良好表達(dá)方式锋玲。注釋可以說是一個補救措施景用。
? ? ?注釋的有點是,增加可讀性與可理解性惭蹂。
? 注釋的缺點是:可能因多個程序員的改動伞插,造成注釋內(nèi)容陳舊,提供錯誤信息盾碗。
? ? ?我一直不建議寫注釋的原因媚污,是因為注釋會說謊。一:就算是注釋廷雅,漢語的表達(dá)也可能存在詞不達(dá)意的情況耗美。二:代碼在變動京髓,在迭代,在修改商架,不幸的是注釋并不總是隨之變動堰怨。我們不可忽略的一點是,注釋存在的時間越久蛇摸,就離其所描述的代碼越遠(yuǎn)备图,也許是全然的錯誤。為什么我不建議寫注釋赶袄,很簡單揽涮,隨著人員的流動,項目的高速迭代饿肺,程序員能不能堅持長久的維護(hù)注釋蒋困,誰也不能保證。
? ? 我們應(yīng)該盡量做到敬辣,準(zhǔn)確的命名家破,真正好的程序員是找到困難的解決方案,盡量不去寫注釋购岗。
? ?說了注釋的很多缺點,其實注釋本身沒有錯门粪,錯的是我們使用它的時機與地方喊积。比如,警示的作用玄妈。如:“// 在此處共花費時間26小時”乾吻。這個就相當(dāng)?shù)挠杏茫驗槠渌绦騿T看了拟蜻,就知道绎签,業(yè)務(wù)邏輯復(fù)雜,修改時候要細(xì)心酝锅,多琢磨一下诡必。
? ?什么也比不上良好的代碼有用,什么也不會比亂起八糟的注釋更有本事?lián)v亂搔扁,什么也不會比陳舊爸舒,提供錯誤信息的注釋更有破壞性。適當(dāng)?shù)臅r機稿蹲,適當(dāng)?shù)奈恢檬褂米⑨屌っ悖梢允掳牍Ρ丁S缅e了苛聘,會浪費開發(fā)時間涂炎,影響項目進(jìn)度忠聚。
? 注釋并不是純?nèi)坏暮谩?/p>