星期六, 10月 02, 2010

Coding Style

一直以來都是自己開發系統
也還沒跟別人合作過
快把自己的coding style好好補一下

Mr.Days建議閱讀的文章

讀了幾篇
coding style就是要讓別人可以看的懂,能很快的看出結構
以這個為出發點 本身的coding style就不會太差了
其他的技巧及convention就多讀一點囉...
  • Naming Rule
    最近聽人介紹一本書Clean Code, 感覺也挺不錯的
    看別人寫好的心得最快,以下截出幾句...
    • Use Intention-Revealing Names 
      一個命名,還需要註解來解釋它,就代表他還不夠清楚表示意思
    • Make Meaningful Distinctions
      獨自開發時容易因為一時的方便,只為了建置或開發方便,而隨手使用了不具意義或暫時的命名,往往之後帶來相當多潛在的問題
    • Use Pronounceable Names
      幫助溝通,而且不會顯得這麼愚蠢
    • Use Searchable Names 
      太容易重複出現,就會導致不容易搜尋與定位
  • Version control
    時常自己獨立完成一支程式,想想個人做Version control頂多是backup吧... 不... backup都至少是上個星期的事情了...
    fcamel的文章「養成寫程式的好習慣」,提到即便是一個人 做Version control也是有幫助的
    原本還沒想到有什麼好處
    看完後,發現自己還滿常發生facmel的說的狀況
    • 寫程式較不怕被中斷,只要 hg diff 就知道剛才改了什麼。commit 前也能清楚明白這次做了那些修改,去掉忘了除掉的 debug code。
    • 可以放心地修改,改到昏頭就 hg up -C 清掉剛才不知所云的修改,不用花費力氣將程式弄回正常的版本。
    • 寫到一半發覺要先完成另一個功能,hg shelve 暫存目前的修改,接著將另一個功能做完並 commit,再 hg unshelve 回頭做原本的事,可以輕鬆地切換目標,隨時專注在目前的目標上。
    • 若發覺某個功能忽然不能運作,hg up 切回舊的版本,做個 binary search (或用 hg bisect) 立即找到改出問題的 commit。由於每個 commit 都很精簡,看一下就會找到改爛的原因。

說到差的conding style...
我最受不了沒縮排的...
真不知道他們怎麼coding的...
哦..還有還有... 把所有東西都寫在同一個class裡的那種...

References:

沒有留言: