Re: [討論] 要不要寫註解

作者: ripple0129 (perry tsai)   2019-10-25 22:40:08
這個問題討論很多次了
先講一下寫註解最可能的缺點好了
第一 程式碼與註解不同步
也就是當程式碼更新的時候
註解沒有更新
第二 多了許多雜訊
如果註解沒寫好的話
反而是個干擾閱讀的東西
那不寫註解又有什麼缺點
第一 對於功能沒有說明都需要由程式碼來了解
所以可能必須花更長的時間來理解
第二 特例的狀況絕對會感到莫名奇妙
譬如老闆說王董的帳號給他特權
莫名奇妙就多個if user xxx then xxx
抓不著頭緒
所以該不該寫註解就是看當下場景做選擇了
程式碼能夠表達明確的意圖
也就是程式碼本身就能夠提供良好的說明
那當然可以不用寫
如果邏輯十分複雜
程式碼很難表達意圖
那該寫的還是要寫
再來就是特例幾乎都要寫
寫了程式碼回過頭看自己程式碼
摸摸良心認為別人不需要註解也能看的懂的話
那就不用寫了
如果自己不能判斷別人有沒有辦法看懂
那還是乖乖補上別害人了
※ 引述《sec5566 (sec)》之銘言:
: 聽過說法是
: 1.寫註解是浪費時間,命名命的好不需要寫
: 2.寫註解方便維護,而且讀中文一定比讀英文快
: 自己是常常忽略註解,
: 不過有空還是會補上,
: 因為程式都只有我在弄,
: 但是當大型系統過一陣子在拿出來改時,
: 就知道不寫註解真的是省小時間花大時間,
: 像是一堆函式傳幾個變數能跑出什麼,
: 還是同樣提資料,這2個提出來差在哪?
: 不寫後面維護的人,就要很辛苦去看裡面,
: 尤其是交接工作,
: 大家會寫註解嗎?
:
作者: viper9709 (阿達)   2019-10-25 23:32:00
作者: Ghamu (貓丸)   2019-10-26 11:11:00
邏輯十分複雜想寫註解的時候通常代表著該重構了註解不該描述程式碼本身 應該描述程式碼裡面沒有提到的事情類似寫這段的意圖 舉例類似有一個奇怪的寫法是要避掉一個bug這就該特別描述註解應該要寫的是你單看程式碼看不到的東西 要幫助程式碼本身可理解就靠命名跟拆分
作者: michael0728n (蒜˙遠古)   2019-10-26 11:49:00
同意樓上,看到註解寫這是為了繞開奇怪的opensourcebug還附討論連結真的會感動到痛苦流涕XD
作者: Ghamu (貓丸)   2019-10-26 12:25:00
我只是照抄Clean code而已 歡迎大家買回家看(打書XD
作者: joejoe14758 (KILE)   2019-10-26 17:52:00
問題是通常都沒有人有時間重構啦
作者: testPtt (測試)   2019-10-26 19:30:00
因為剛開始寫通常不會去想abstract virtual interface這些東西 所以重構也就覺得很亂
作者: hankyan919 (比奇堡樂隊)   2019-10-26 23:44:00
坦白說註解要改寫比變數名稱改寫方便多了

Links booklink

Contact Us: admin [ a t ] ucptt.com