3.1 开闭原则

对扩展开放,对修改关闭。

3.2 里氏代换原则

子类继承父类时,除添加新的方法完成新增功能外,尽量不要重写父类的方法。

3.3 依赖倒转原则

抽象进行编程,不要对实现进行编程

3.4 接口隔离原则

客户端不应该被迫依赖于它不使用的方法;一个类对另一个类的依赖应该建立在最小的接口上

3.5 迪米特法则

迪米特法则又叫最少知识原则。
如果两个软件实体无须直接通信,那么就不应当发生直接的相互调用,可以通过第三方转发该调用。

3.6 合成复用原则

合成复用原则是指:尽量先使用组合或者聚合等关联关系来实现,其次才考虑使用继承关系来实现。