物件導向設計原則,以及包的設計原則
首先來回憶一下OO的設計原則:
1. 單一責任原則(SRP) 一個類只有一個責任, 如果它需要被修改, 應該僅有一個原因.
反模式: 一個類處理的事情太多了, 應當進行分解.
2. 開放-閉合原則(OCP) 對擴充套件開放, 對修改封閉. 也就是說可以修改一個模組(類或方法)的周邊環境而不用修改模組本身.
反模式: 一個模組的修改將導致其他模組的修改.
3. 里氏替換原則(LSP) 子類可以代替基類, 客戶使用基類, 他們不需要知道派生類所做的事情.
反模式: if(a instanceof TypeA) {...}
4. 依賴倒置原則(DIP) 依賴於抽象類或介面,而不要依賴於那些容易變化的具體類。
從抽象類繼承 從抽象類引用 從抽象類呼叫方法。
5. 介面隔離原則(ISP) 客戶不應該依賴根本不用的方法. 為每一個客戶提供一個介面,這個介面只包含他們感興趣的方法。
反模式:肥類(fat class), 有成堆的方法, 而且使用者很少使用。
接下來看包的設計原則:
1. 釋出/重用等價原則(REP) 我們建立包的目的是為了給別人重用,所以重用的粒度就是釋出的粒度。
2. 公共閉合原則(CCP) 因為相同原因而被修改的類應該放入一個包中,對應於“單一責任原則”。
3. 公共重用原則(CRP) 應該儘可能地將只被一個客戶使用的包與被多個不同客戶使用到的包分開。對應於“介面隔離原則”
4. 非迴圈依賴原則(ADP) 不要在包依賴圖中出現迴圈依賴。如a依賴於b, b依賴於c,同時c又依賴於a。
5. 穩定依賴原則(SDP) 要依賴於穩定的包,而不要依賴於經常變化的包。對應於“依賴倒置原則”。
6. 穩定抽象原則(SAP) 穩定的包應當是抽象的。對應於“依賴倒置原則”。
1. 單一責任原則(SRP) 一個類只有一個責任, 如果它需要被修改, 應該僅有一個原因.
反模式: 一個類處理的事情太多了, 應當進行分解.
2. 開放-閉合原則(OCP) 對擴充套件開放, 對修改封閉. 也就是說可以修改一個模組(類或方法)的周邊環境而不用修改模組本身.
反模式: 一個模組的修改將導致其他模組的修改.
3. 里氏替換原則(LSP) 子類可以代替基類, 客戶使用基類, 他們不需要知道派生類所做的事情.
反模式: if(a instanceof TypeA) {...}
4. 依賴倒置原則(DIP) 依賴於抽象類或介面,而不要依賴於那些容易變化的具體類。
從抽象類繼承 從抽象類引用 從抽象類呼叫方法。
5. 介面隔離原則(ISP) 客戶不應該依賴根本不用的方法. 為每一個客戶提供一個介面,這個介面只包含他們感興趣的方法。
反模式:肥類(fat class), 有成堆的方法, 而且使用者很少使用。
接下來看包的設計原則:
1. 釋出/重用等價原則(REP) 我們建立包的目的是為了給別人重用,所以重用的粒度就是釋出的粒度。
2. 公共閉合原則(CCP) 因為相同原因而被修改的類應該放入一個包中,對應於“單一責任原則”。
3. 公共重用原則(CRP) 應該儘可能地將只被一個客戶使用的包與被多個不同客戶使用到的包分開。對應於“介面隔離原則”
4. 非迴圈依賴原則(ADP) 不要在包依賴圖中出現迴圈依賴。如a依賴於b, b依賴於c,同時c又依賴於a。
5. 穩定依賴原則(SDP) 要依賴於穩定的包,而不要依賴於經常變化的包。對應於“依賴倒置原則”。
6. 穩定抽象原則(SAP) 穩定的包應當是抽象的。對應於“依賴倒置原則”。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10742815/viewspace-578362/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 物件導向設計原則物件
- 物件導向的設計原則物件
- 開閉原則——物件導向程式設計原則物件程式設計
- 物件導向設計原則之開閉原則物件
- 物件導向設計原則概述物件
- 物件導向設計(OOD)原則物件
- 物件導向的基本設計原則物件
- 【設計原則】物件導向程式設計的六大原則物件程式設計
- 物件導向設計原則之合成複用原則物件
- 物件導向設計原則之介面隔離原則物件
- 物件導向設計原則之里氏代換原則物件
- 物件導向之旅-設計與設計原則物件
- The Principles of OOD 物件導向設計原則物件
- 物件導向設計原則和模式物件模式
- 2.物件導向設計原則物件
- Java中物件導向的設計原則Java物件
- 物件導向的編碼設計原則物件
- 物件導向設計原則之單一職責原則物件
- 物件導向設計原則&設計模式分類物件設計模式
- 前端設計模式(0)物件導向&&設計原則前端設計模式物件
- 物件導向設計6大原則物件
- 物件導向設計的6大原則物件
- 我學設計模式 之 物件導向設計原則設計模式物件
- 物件導向設計原則之迪米特法則物件
- 物件導向設計的六大原則(SOLID原則)-——里氏替換原則物件Solid
- 翻譯 | The Principles of OOD 物件導向設計原則物件
- 物件導向之六大設計原則物件
- 61條物件導向設計的經驗原則物件
- 七種常見的物件導向設計原則物件
- SOLID:物件導向設計的前五項原則Solid物件
- 程式設計師應當知道的10個物件導向設計原則程式設計師物件
- 設計模式(一)——物件導向六大原則設計模式物件
- 實驗1:UML與物件導向程式設計原則物件程式設計
- 物件導向程式設計(OOP)的七大原則物件程式設計OOP
- 程式設計師應知道這十大物件導向設計原則程式設計師物件
- 物件導向設計的六大設計原則(附 Demo & UML類圖)物件
- Java程式設計師應當知道的10個物件導向設計原則Java程式設計師物件
- Java程式設計師應瞭解的10個物件導向設計原則Java程式設計師物件