重構原則(Java)
1995,Auer曾在文獻[AUER95]中指出:
1.應當根據行為而不是狀態定義一個類。也就是說,一個類的實現首先建立在行為基礎之上,而不是建立在狀態的基礎之上。
2.在實現行為時,是用抽象狀態而不是用具體狀態。如果一個行為涉及到物件的狀態時,使用間接的引用而不是直接的引用。換言之,應當使用取值方法而不是直接引用屬性。
3.給操作劃分層次。一個類的行為應當放到一個小組核心方法(kernel method)裡面,這些方法以很方便地在子類中加以置換。
4.將狀態屬性的確認推遲到子類中。不要在抽象類中過早宣告屬性變數,應該將它們儘量地推遲到子類中去宣告。在抽象超類中,如果需要狀態屬性的話,可以呼叫抽象的取值方法,而將抽象的取值方法的實現放到具體子類中。
如果能夠遵從這樣的原則,那麼就可以在等級結構中將介面與實現分隔開來,將抽象與具體分割開來,從而保證程式碼可以最大限度地被複用。
1.應當根據行為而不是狀態定義一個類。也就是說,一個類的實現首先建立在行為基礎之上,而不是建立在狀態的基礎之上。
2.在實現行為時,是用抽象狀態而不是用具體狀態。如果一個行為涉及到物件的狀態時,使用間接的引用而不是直接的引用。換言之,應當使用取值方法而不是直接引用屬性。
3.給操作劃分層次。一個類的行為應當放到一個小組核心方法(kernel method)裡面,這些方法以很方便地在子類中加以置換。
4.將狀態屬性的確認推遲到子類中。不要在抽象類中過早宣告屬性變數,應該將它們儘量地推遲到子類中去宣告。在抽象超類中,如果需要狀態屬性的話,可以呼叫抽象的取值方法,而將抽象的取值方法的實現放到具體子類中。
如果能夠遵從這樣的原則,那麼就可以在等級結構中將介面與實現分隔開來,將抽象與具體分割開來,從而保證程式碼可以最大限度地被複用。
相關文章
- 重構的原則
- 重構改善既有的程式碼設計(重構原則)
- 程式碼重構方向原則指導
- 重寫遵循的原則
- 為什麼要重構?深入探討重構的原則、範圍和時機
- Java異常使用原則Java
- 架構設計 | 介面冪等性原則,防重複提交Token管理架構
- Java泛型的PECS原則Java泛型
- Java : 常用重點正則標記Java
- SOLID架構設計原則Solid架構
- Salesforce架構的10條原則Salesforce架構
- java開閉原則是什麼?Java
- 多表等值關聯重複列的命名原則
- OCP原則——開閉原則
- 雲原生架構的七個原則架構
- 雲原生架構及設計原則架構
- 面向服務架構(SOA)的原則架構
- 解析 Android 架構設計原則Android架構
- 一文get到SOLID原則的重點Solid
- Java中的設計模式和原則Java設計模式
- 架構整潔之道二(設計原則)架構
- 人人都是架構師: 約束和原則架構
- Apache 架構師總結的 30 條架構原則Apache架構
- 設計原則:開閉原則(OCP)
- Java中物件導向的設計原則Java物件
- Java設計模式之依賴倒置原則Java設計模式
- Java設計模式六大原則Java設計模式
- 設計原則:介面隔離原則(ISP)
- SOLDI原則之DIP:依賴倒置原則
- 設計原則之【介面隔離原則】
- 設計原則-依賴反轉原則
- [分散式]架構設計原則--高併發分散式架構
- 雲原生架構成功的6大原則架構
- 簡單介紹架構設計的原則!架構
- C 語言結構體的對齊原則結構體
- c語言資料結構補齊原則C語言資料結構
- 實戰解析Android架構設計原則Android架構
- oop原則OOP