還是迴頭拿起書架裏的重構教科書來看看吧,就是那本由兩位大師Martin Fowler, Kent Beck和其他三人閤寫的《Refactoring: Improving the Design of Existing Code》,想要在其中找找看怎樣來重構比較妥當。這本重構經典書告訴你,要重構就不能把原有功能給破壞瞭,所以在開始重構之前,首先應建立起「自動化測試」。好的,那我們就去打開測試程式吧!什麼,遺留係統沒有測試程式,那該怎麼辦呢?遺留係統不是用TDD開發的,那…那,我們要怎樣重構纔能保證原有功能不會齣錯呢?慘瞭,在第一關就卡住瞭。硬著頭皮乾吧,反正就是另外再寫新功能,不要去動到舊有的程式碼就對瞭。是的,這就是現實中大多數颱灣工程師的作法。可是這樣做,程式碼的品質就越來越差瞭,不論是自己後麵要再加新功能或者是丟給彆人來接手,無疑都是場災難。