依赖倒转原则
高层模块不应该依赖低层模块,两个都应该依赖抽象。
抽象不应该依赖细节,细节应该依赖抽象。
说白了,其实就是要针对接口编程,不要对实现编程。
依赖倒转可以说是面向对象设计的标志,用哪种语言来编写程序不重要,如果编写时考虑的都是如何针对抽象编程而不是针对细节的编程,即程序中的所有依赖关系都是终止于抽象类或者接口,那就是面向对象的设计,反之,那就是过程化的设计了。
依赖倒转原则的本质就是通过抽象使各个类或模块的实现彼此独立,实现模块间的松耦合。
我们在项目中使用这个原则要遵循下面的规则:
- 每个类尽量都有接口或者抽象类,或者抽象类和接口两都具备
- 变量的表面类型尽量是接口或者抽象类
- 任何类都不应该从具体类派生
- 尽量不要复写基类的方法
- 结合里氏替换原则使用
网友评论