1、单一职责原则 高内聚,低耦合
2、开放封闭原则, 对扩展开放,对修改封闭
3、里式替换原则, 子类能替换基类,是保证继承复用的基础
4、依赖倒转原则, 依赖于抽象。高层不依赖底层模块,都依赖于抽象;抽象不依赖与具体,具体依赖于抽象
5、接口隔离原则, 使用多个小的专门接口,不使用大接口。