第二周作业
1、描述什么是依赖倒置原则,为什么有时候依赖倒置原则又被称为好莱坞原则?
官方定义:
1、高层模块不应依赖于低层模块,二者应依赖于抽象
2、抽象不应依赖于细节,细节应依赖于抽象。
在我们业务开发过程中,一般会出现高层模块依赖底层模块的具体实现。设计要考虑以后的变化,这样是不合理。如何解决?引入一个间接层。让高层依赖这个中间层,底层也基于这个中间层来实现。这样就是依赖倒置。这里核心点就是要构建合适的抽象模型来做中间层。
好莱坞原则:don't call me.i will call you. 由于高层和底层都依赖抽象层,底层就对高层没有依赖,当组件组装时候,可以指定合适的底层具体实现,当然这个底层实现是可以随时替换。比如通过IOC容器组装。
2、请用接口隔离原则优化 Cache 类的设计,画出优化后的类图。
这个是要考虑接口隔离原则。
评论