1,开放 – 封闭法则(OCP)
* 对扩展是开放的,对更新是封闭的。
* 可以添加新的代码来扩展系统的行为,但不能对已有代码进行修改。
2,Liskov替换法则(LSP):子类应当可以替换父类并出现在父类能够出现的任何地方。
3,单一职责原则(SRP):就一个类而言,应该仅有一个引起它变化的原因,即:每个类集中做好一件事,类的职责简单而集中。,在需求变化时,只修改一个地方。
4,依赖倒置原则(DIP):
* 高层模块不应依赖于底层模块,两者都应依赖于抽象。
* 抽象不应依赖于细节,细节应依赖于抽象。
* 针对接口编程,不针对实现编程。