2011年4月24日 星期日

Bad smells in Code:Duplicated Code

Duplicated Code (重複的程式碼)
Duplicated Code會讓程式不好維護,也會讓程式變的冗長,常見的重複狀況如下:
  • 一個Class內有兩個個函式具有相同的運算式,這時可以採用Extract Method
    將其提煉出來成為一個函式。
  • 兩個具有兄弟關係的Class(繼承同一個父類別),兩Class內存在相同運算式的函式,可以使用Pull Up Method方式,將其函式提煉出來放置父類別中,解決Duplicated Code。
  • 兩個沒有關係的Class也會出現相同運算式的程式碼,可以考慮將這重複的運算式寫成另外一個Classb讓其運用,這感覺類似使用策略模式,或是過程代理。