设计模式七大原则:
- 单一职责
- 接口隔离
- 依赖倒转
- 里氏替换
- 开闭原则
- 迪米特法则
- 合成复用
单一职责原则
每个类只负责单一的职责.
好处:
- 当类变更时不会影响其他类;
- 降低单个类的复杂度;
接口隔离原则
接口颗粒度尽可能小以达到相互隔离的效果;A 类对 B 类的依赖建立在最小的接口上。
好处:
- 实现类不需要实现无用的方法;
- 减小接口颗粒度,降低接口的复杂度;
依赖倒转原则
面向接口编程;
抽象不依赖实现,实现依赖抽象;
好处:
- 抽象比实现稳定,减少变更的可能性;
- 设计和实现分离,利于分工和效率;
里氏替换原则
父类对象能被子类对象透明替换。
(子类不要重写父类方法)
好处:
- 减少使用继承的耦合性影响
✨ 开闭原则
对扩展开放,对修改关闭。
软件发生变更时,扩展软件优于修改软件。
好处:
- 易于扩展和修改
迪米特法则
“最少知道原则”,对象对其他对象保持最少的了解;
只与直接朋友通信,不要出现其他陌生的类的对象。
合成复用原则
- 优先使用聚合、组合,谨慎使用继承
小结
设计目的:
- 面向接口编程
- 将不变的代码与变化的代码分离
- 对象之间松耦合