面向对象设计原则
单一职责原则
SRP:Single Responsibility Principle
一个类只负责一个功能领域的响应职责
开闭原则
OCP : Open-Closed Principle
一个软件应当对扩展开放,对修改关闭,也就是说软件实体应该尽量在不修改原有代码的情况下进行扩展
里氏替换原则
LSP : Liskov Substitution Principle
所有引用基类(父类)的地方必须能够透明的使用其子类的对象,也就是说子类可以扩展父类的功能,但不能改变父类原有的功能
依赖倒置原则
DIP Dependency Inversion Principle
要针对接口编程,而不是针对实现编程
接口隔离原则
ISP Interface Segregation Principle
使用多个专门的接口,而不是用单一的总的接口
迪米特法则
LoD Law of Demeter
一个软件应当尽可能少的与其他实体发生相互作用
合成复用原则
CRP Composite Reuse Principle
尽量使用对象组合,而不是继承达到复用的目的