重構的過程中,「不知道目標」與「硬重構成不適合的目標」都是常見造成未來更高維護成本的情況。不知道目標比較常出現在只知道完成工作,從沒想過要做得更好的人或團隊身上,而有心想要把事情做得更好的人,則常在剛開始學習時,因為可供選擇的 Solution 也不多,於是可能把一個只有 30% 適合的 Solution,拿來套在眼前的工作上。
這時,因為此 Solution 本來就不是為了這個場景設計的,因此,不只在套用的過程可想而知不會太順利,套用完後的結果,也不一定能解決原本的問題。
因此,與其花大把時間改寫成某個不確定適不適合的 Solution,不如先退一步,先把基本的程式設計原則做好,例如重複的 code 不要寫多次。而要怎麼確定重複的 code 不會寫多次?首先第一步就是把長得很像的東西寫成一模一樣。
這是很重要的第一步,因為長得一模一樣,我們到時要「抽共同」時,才知道範圍在哪,抽起來才會方便。