依赖倒置原则
对依赖倒置原则的基本理解
高层模块不应该依赖底层模块,二者都应该依赖抽象。
抽象不应该依赖细节,细节应该依赖抽象。
依赖倒置的中心思想是面向接口编程。
相对于细节的多变性,抽象要稳定的多。以抽象为基础搭建的架构比以细节为基础搭建的架构要稳定的多。
使用接口或抽象类的目的是制定规范,而不涉及任何具体的操作,把展现细节的任务交给他们的实现类来完成。
Don‘t call me, I‘ll call you
在系统的高层组件与低层组件之间,高层组件不应该直接调用低层组件。
在高层基于抽象定义接口,由底层实现高层的接口,高层通过接口调用底层的功能。这样,高层和低层依赖的是基于同一抽象形成的接口,高层和低层的实现相互独立,没有直接的依赖关系,只要保持接口类的稳定,高层和低层都可以独立地发生变化。
评论