名詞:對軟體內部結構的一種調整。
動詞:對軟體內部結構進行調整。
1. 改進軟體設計
**結構在累積性的後續開發被破壞,不同的人不同的風格。重構保持身材。
減少重複。
2. 使軟體更容易理解
有意義的變數、方法命名。
抽取公共的方法,刪除重複冗餘的**,明確的呼叫路徑,在**閱讀上更易理解。
3. 提高程式設計速度
重構帶來良好的設計,良好的設計才能快速開發,
在已有的基礎上開發,對以往的**更容易理解,
寫出更強健的**,測試上效率的提高。
1. 三次法則
第三次做類似的事情時,考慮重構。
類似get方法獲取變數作為其它函式的入參時,如果類似的不足三次,就不會宣告乙個變數來接收這個結果。
2. 新增新特性的時候
因為新增新特性的時候,往往原有的結構對新加的特性不友好,這時進行重構。
3. 修復錯誤的時候
例如丟擲的異常不能準確描述異常原因時。
4. **評審的時候
多人的總結、提議。
不應該重構的:
無可救藥的時候,只能推倒重來。
專案接近尾聲。
優化的是10%的經常被呼叫的**,而不是90%很少執行的**。
重構讀書筆記(一)
重構與設計 重構一書提到重構與設計的關係,講到的乙個場景就是,作者早年程式設計,總是混混額額的開始編碼,很快就發現事先做好設計可以節省很多返工的工作量,於是又有意識的加強 預先設計 風格。這不正是目前國人的寫照嗎,國人往往吃了沒有設計的虧後,就過分強調設計,特別在大專案大企業更是如此,其實還是處於軟...
《重構》讀書筆記
再次看重構這本書,用了十幾分鐘,看完了原來斷斷續續用了差不多一周看完的第一章 沒有增加什麼新知識 僅對state stategy模式增加了點熟悉度 可見許久前學習第一章還是比較深入的,呵呵。還記得當時看得還是有點費力的。站的高度不同了,視角變化了,所以看得也快,看得也更精深。首先覺得第一章寫的真不賴...
重構讀書筆記
年前參加了軟體重構的培訓,就像老師所說,幾天的培訓不會有實質的變化,主要的目的是出發更深層次的思考和不斷的實踐,1,duplicated code,重複 是最常見,醜陋的壞味道,有以下一些解決辦法 extract method pull up method template method 這個準則最...