OO设计原则:SOLID
SOLID
-
SRP(The Single Responsibility Principle,单一责任原则)
- 不应有多于1个的原因使得一个类发生变化
- 一个类,一个责任
-
OCP(The Open-Closes Principle,开放-封闭原则)
- 对修改封闭,对扩展开放
-
LSP(The Liskov Substitution Principle,Liskov替换原则)
- 子类型必须能够替换其父类型
-
DIP(The Dependency Inversion Principle,依赖转置原则)
- 抽象的模块不应依赖于具体的模块
- 换言,delegation时,应通过interface建立联系,而非具体子类
-
ISP(The Interface Segregation Principle,接口聚合原则)
- 不能强迫客户端依赖于它们不需要的接口,只提供必须的接口
- 也就是不要在一个接口中写太多方法,避免这种胖接口,分解成多个小接口