預構是利用經驗累積而得的洞察力,加以開發出新的解決方案。透過重構而獲得的專業知識也屬於這類經驗之一;而預購的詞源即來自於重構。重構是修改程式或軟體系統內部結構的實務作為,藉此改良其設計內容,同時保留其現有行為。重構的原因有很多種:簡化新增功能的過程、改良維護性、增加效能。
本書作者是經驗老道的軟體開發人員,書中作者運用他個人以及其他眾多開發人員的經驗,展示其推衍而得的實務以及各項方針。這些方針把優良開發人員在設計時,隱而未顯的考量細節如實呈現出來。許多方針都圍繞著極致抽象化、極致區隔以及極致可讀性這幾個概念旋轉。作者的方針透過假想軟體專案,以及實務專案的介紹而呈現出來,其中幾條方針羅列如下。
把作者的方針應用到你的軟體專案,有助於寫出更具可讀性以及維護性的程式。這些方針可以協助你事先做決策,減少事後重構的工作量。某種程度而言,你可以想得更遠,預測未來的修改,簡言之,就是預先架構你的程式,如此一來,更有生產力。
抽象時,就徹底抽象
整合小區塊要比拆卸大區塊容易
把小事做好,就可能常受重用
從大處規劃,從小處設計
讓你的程式能傳達訊息
最容易除錯的程式就是你沒寫的程式
使用客戶的語言
別讓冷空氣進來
絕不沉默
不要加速,除非你知道目的
本書作者是經驗老道的軟體開發人員,書中作者運用他個人以及其他眾多開發人員的經驗,展示其推衍而得的實務以及各項方針。這些方針把優良開發人員在設計時,隱而未顯的考量細節如實呈現出來。許多方針都圍繞著極致抽象化、極致區隔以及極致可讀性這幾個概念旋轉。作者的方針透過假想軟體專案,以及實務專案的介紹而呈現出來,其中幾條方針羅列如下。
把作者的方針應用到你的軟體專案,有助於寫出更具可讀性以及維護性的程式。這些方針可以協助你事先做決策,減少事後重構的工作量。某種程度而言,你可以想得更遠,預測未來的修改,簡言之,就是預先架構你的程式,如此一來,更有生產力。
抽象時,就徹底抽象
整合小區塊要比拆卸大區塊容易
把小事做好,就可能常受重用
從大處規劃,從小處設計
讓你的程式能傳達訊息
最容易除錯的程式就是你沒寫的程式
使用客戶的語言
別讓冷空氣進來
絕不沉默
不要加速,除非你知道目的