1.函數:
a.不要過多參數
b.輸出參數,如果函數要修改什麼東西的狀態,那麼修改其對象的狀態就好
c.刪除不被調用的方法
d.boolean參數讓方法做不只一件事,應該避免
2.一般性問題:
a.避免重複代碼,否則表示遺漏了抽象
b.較低層次的概念放在派生類中,較高層級的概念放在基類中
c.類的方法越少越好,函數知道的變量越少越好,類擁有的實體變量越少越好
d.刪除不會被執行的代碼
e.變量函數應該靠近被使用的地方定義
f.類的方法只應對其所屬類中的變量和函數感興趣,否則將一個類的情景暴露給了另一個類
g.使用多個函數而不是boolean等算子參數選擇函數行爲
h.讓程序可讀的最有力的方法之一就是將計算過程大三成在用有意義的單詞命名的變量中放置的中間值
i.杉樹名應該表達其行爲
j.用明明常量替代魔術數
k.將揭示了條件意圖的函數抽離出來 if(......)
l.避免否定性條件
m.函數只做一件事
n.函數應該只在一個層級上
3.名稱
a.採用描述性名稱
b.爲較大作用範圍選用較長名稱