設計模式基本原則:
- “開-閉”原則(Open-Closed Principle,或者OCP) 原文:Software entities should be open for extension,but closed for modification.
解釋:一個軟件實體應當對擴展開放,對修改關閉。 - 里氏代換原則(Liskov Subsitution Principle,或者LSP) 任何基類出現的地方,子類一定可以出現。
- 依賴倒轉原則(Dependency Inversion Principle,或者DIP) 要依賴於抽象,不要依賴於實現。
- 接口隔離原則(Interface Segregation Principle,或者ISP) 應當爲客戶端提供儘可能小的單獨的接口,而不要提供大的總接口。
- 組合/聚合複用原則(Composition/Aggregation Principle,或者CARP) 要儘量使用合成/聚合,而不是繼承關係達到複用的目的。
- 迪米特法則(Law of Demeter,或者LoD) 一個軟件實體應當與儘可能少的其他實體發生相互作用。
- 單一職責原則(Single Responsibility Principle,或者SRP) 要使每一個軟件實體只負責一種職責的實現