梦行
梦行
Published on 2019-05-27 / 29 Visits
0
0

架构师训练营第二周作业

作业一:

请描述什么是依赖倒置原则,为什么有时候依赖倒置原则又被称为好莱坞原则?

依赖倒置原则的包含如下的三层含义:

  • 高层模块不应该依赖低层模块,两者都应该依赖其抽象

  • 抽象不应该依赖细节

  • 细节应该依赖抽象

每一个逻辑的实现都是由原子逻辑组成的,不可分割的原子逻辑就是低层模块(一般是接口,抽象类),原子逻辑的组装就是高层模块。在Java语言中,抽象就是指接口和或抽象类,两者都不能被直接实例化。细节就是实现类,实现接口或继承抽象类而产生的类就是细节,可以被直接实例化。

  • 模块间的依赖通过抽象发生,实现类之间不发生直接的依赖关系,其依赖关系是通过接口或抽象类产生的

  • 接口或抽象类不依赖于实现类

  • 实现类依赖于接口或抽象类

作业二:

请描述一个你熟悉的框架,是如何实现依赖倒置原则的。

JDK 数据库驱动也是一种依赖倒置,由jdk定义好了Drive、Connection接口,每个数据库厂商都实现了这个抽象的接口,同时在DriveManager中会在合适的时机来通过抽象来调用厂商的数据库实现,这也是一种依赖倒置。

作业三:

Image text

Image text


Comment