設計原則:
⊙"開-閉"原則(Open-Close Principle或者OCP)
一個軟件實體應該對擴展開發,對修改say NO!在設計一個模塊的時候,應當思考日後升級過程中,如何不修改源代碼的情況下改變這個模塊的行為
⊙里氏代換原則(Liskov Substitution Principle 或者 LSP)
任何基底類別可以出現的地方,子類別都可以出現,而基底類別與子類別的繼承關係就是抽象化的具體體現
⊙依賴倒轉原則(Dependeney Inversion Principle 或者 DIP)
要以來依賴於抽像不要依賴於實體
⊙介面隔離原則(Interface Segregation Principle 或者 ISP)
應該為客戶端提供盡可能少的單獨的接口,而不是提供大的總接口
⊙組合/聚合復用原則(Composition/Aggregation Principle 或者 CARP)
盡量要使用組合/聚合,而不是繼承關係達到復用的目的
⊙迪米特法則(Law of Demeter或者LoD)
一個軟件實體應當與盡可能少的其他實體發生互相作用