依赖反转:
DIP:依赖反转原则 Dependence Inversion Principle
依赖反转原则主要想告诉我们的是,如果想要设计一个灵活的系统,在源代码层次的依赖关系中就应该多引用抽象类型,而非具体实现。
为什么需要多引用抽象类型:
我们每次修改抽象接口的时候,一定会修改具体实现。
修改具体实现的时候,很少需要修改对应的抽象接口。
优秀的软件设计师和架构师会花费很大精力来设计接口,以减少未来对其进行改动。如果想要在软件架构设计上追求稳定,就必须多使用稳定的抽象接口,少依赖多变的具体实现。
依赖反转设计原则归结为以下几条具体的编码守则:
- 多使用稳定的抽象接口,少依赖多变的具体实现。
- 不要在具体实现类上创建衍生类
- 不要覆盖包含具体实现的函数
- 应避免在代码中写入与任何具体实现相关的名字,或者是其他容易变动的事物的名字。