2.8 第二周课后练习
请描述什么是依赖倒置原则,为什么有时候依赖倒置原则又被称为好莱坞原则?
和传统依赖关系相反(传统依赖关系是创建在高层次模块的,低层次模块创建具体的依赖策略),依赖倒置原则使得高层次的模块不去依赖低层次模块的实现细节,这样依赖的关系被倒转了,低层次模块就会依赖于高层次模块的需求抽象。这种设计有利于解耦。
为什么被称为好莱坞原则?
我理解的如下。假设一段code是这样的
这个例子里面methodA在往系统里面其他地方去"asking for dependency"
基于dependency inversion原则,这个方法就会变成:
methodA现在不去"asking for dependency"了,把依赖直接注入,而不是让这个方法自己去请求这些依赖。这样的设计更方便于解耦合。
请用接口隔离原则优化 Cache 类的设计,画出优化后的类图。
评论 (1 条评论)