代碼重構~提取方法
提取方法 (Extract Method) — 意思是將大段代碼中的一部分提取后,構成一個新方法;還有一個含義是將多個方法中公用的部分提供出來,形式一個新的方法,
這種重構可以使整段程序的結構變得更清晰,增加可讀性,擴展性和可維護性。
如,有兩個方法,它們的實現部分很雷同,看代碼:
1 public string ChooseItem1() 2 { 3 return SelectItem(1); 4 } 5 6 public string ChooseItem2() 7 { 8 return SelectItem(2); 9 }
而事實上,chooseitem1與chooseitem2的方法體基本一至,只是為selectitem方法傳參時,一個是傳1,另一個是傳2,而我們稍微對程序進行修改,它的表現
將會完全兩樣,看代碼:
1 private string ChooseItem(int value) 2 { 3 return SelectItem(value); 4 } 5 6 public string ChooseItem1() 7 { 8 return ChooseItem(1); 9 } 10 11 public string ChooseItem2() 12 { 13 return ChooseItem(2); 14 }
OK,感覺我們優化的代碼比原來的代碼多了,顯得更麻煩了,其實則不然,這個代碼是將可能發變的,公共的代碼片斷進行封裝,然后再由別外方法去調用,這樣
如果我們希望修改功能,只需要修改ChooseItem這個核心方法即可,而不需要一個一個的去拷貝代碼。
浙公網安備 33010602011771號