1,开-闭原则
关键词:对修改关闭,对拓展开放
理解:用面向对象的语言来讲,不允许更改的是系统的抽象层,而允许拓展的是系统的实现层。
2,里氏置换原则
关键词:任何基类可以出现的地方,子类一定可以出现。
3,依赖倒转原则
关键词:要依赖于抽象,不要依赖于实现。
4,,合成/聚合复用原则
关键词:合成/聚合优于继承
理解:要尽量使用合成/聚合,而不是继承关系达到服用的目的。
5,迪米特法则
理解:一个软件实体应该与尽可能少的其他实体发生相互作用。
6,接口隔离原则
理解:应当为客户端提供尽可能小的单独的接口,而不要提供大的总接口。