讀書摘抄--面向對象設計的11個原則
摘抄自 《敏捷軟件開發--原則、模式與實踐》SRP 單一職責原則
??????? 就一個類而言,應該僅有一個引起它變化的原因
OCP 開放-封閉原則
??????? 軟件實體(類、模塊、函數等)應該是可以擴展的,但是不可修改
LSP Liskov替換原則 (里氏替換原則)
??????? 子類型必須能夠替換掉它們的基類型
DIP? 依賴倒置原則
??????? 抽象不應該依賴于細節。細節應該依賴于抽象。
ISP? 接口隔離原則
?????????不應該強迫客戶依賴于他們不用的方法。接口屬于客戶,不屬于它所在的類層次結構
REP? 重用發布等價原則
?????????重用的粒度就是發布的粒度。
CCP? 共同封閉原則
???????? 包中的所有類對于同一類性質的變化應該是共同封閉的。一個變化若對一個包產生影響,則對該包中的所有類產生影響,而對于其他的包不造成任何影響。
CRP? 共同重用原則
???????? 一個包中的所有類應該是共同重用的。如果重用了包中的一個類,那么就要重用包中的所有類。
ADP? 無環依賴原則 (交叉引用)
????????? 在包的依賴關系圖中不允許存在環。
SDP? 穩定依賴原則
???????? 朝著穩定的方向進行依賴。
SAP? 穩定抽象原則
???????? 包的抽象程度應該和其穩定程序一致。
注:SDP+SAP=針對包的DIP原則 (書中235頁)
posted on 2005-09-26 18:15 Scud(飛云小俠) 閱讀(1178) 評論(0) 編輯 收藏 所屬分類: 其他 、理論原則