一、 六大設計原則 1. 單一職責原則:應該有且僅有一個原因引起類的變更 2. 里氏替換原則:子類可替換父類。 a) 子類必須完全實現父類的方法 b) 子類可以有自己的個性 c) 子類實現父類方法時,入參可放大 d) 子類實現父類方法時,輸出參數可縮小 3. 依賴倒置原則:高層模塊不應該依賴底層模塊 ...
一、 六大設計原則
1. 單一職責原則:應該有且僅有一個原因引起類的變更
2. 里氏替換原則:子類可替換父類。
a) 子類必須完全實現父類的方法
b) 子類可以有自己的個性
c) 子類實現父類方法時,入參可放大
d) 子類實現父類方法時,輸出參數可縮小
3. 依賴倒置原則:高層模塊不應該依賴底層模塊,二者都應該依賴其抽象。
a) 正常依賴情況:高層模塊直接依賴底層模塊。如果底層模塊需要被替換,那麼高層模塊代碼需要跟著變動。耦合程度過高。
b) 倒置原則要求高層模塊和底層模塊均依賴起抽象,那麼在需要更換底層模塊時,僅需將抽象類更換新模塊即可。
c) 實現類依賴抽象類或介面,依賴關係通過介面或抽象類產生
4. 介面隔離原則:僅提供客戶端需要的介面,即要求對外的每個介面中的方法儘可能的少。
5. 迪米特法則:一個類只和朋友類交流,即我只跟成員變數,方法的輸入和輸出參數接觸。
6. 開閉原則(最基礎的原則,精神領袖):一個軟體實體(類,介面等)應該對擴展開放,對修改關閉。簡單來說就是,在現實開發中,儘可能不去修改其他人的代碼,而是使用擴展,重寫等方法對業務層面的需求進行修改或添加
二、 註意
在實際開發過程中,所有原則均需為實際需求讓路,註意適度原則。我們結合使用六個原則的好處,或者說目標是建立穩定,靈活,健壯的設計。