2011年2月16日 星期三

關於程式"重構"

        最近公司裡面的架構師,希望我們能夠對現行的系統進行程式「重構」....,光是想到那些一個doPost寫到底的code,心裡面便是頭皮發麻,如果遇到像是歸檔相關系列那種大程式,我應該可以寫上三天三夜了,公司的程式太可怕了!以至於需求變更來了,會顧不得啥"re-use",以至於後來的code難以維護。

在網路上找到簡單的重構方法:
1.成員變數封裝(Encapsulate Field)
2.方法提取 (Extract Method) — 意思是轉換大型方法的部分變成新方法。透過拆分代碼成比較小點的區塊而促進方法可讀性。這也對函式通用。(作者註:將寫成一大塊的垃圾程式從中抽出一些code,且另外組成一個個小Method)
3.一般化型別 (Generalize Type)
4.函數歸父 (Pull Up) — 或譯函數上移,指的是方法從子類移動到父類。
5.函數歸子 (Push Down) — 或譯函數下移,指的是方法從父類移動到子類。
6.方法更名 (Rename Method) — 對方法變更其名以更好的表達它的用途,好讓後續接手的人好維護。


--後續要去找找有啥書可以研讀~

沒有留言: