写点什么

架构设计 (作业)

用户头像
胡家鹏
关注
发布于: 2020 年 09 月 29 日
架构设计(作业)

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

依赖倒置原则:DIP(Dependency Inversion Principle)

  • 高层模块不能依赖低层模块,而是大家都依赖于抽象,这个抽象可以是接口或规范或配置。开发中,高层模块不用再等低层模块完成再继续,而是通过抽象,高层模块调用这个接口,低层模块也不依赖高层模块,低层模块去实现这个接口即可,注意的是这个接口要属于高层模块。平常开发中,高层模块Service层调用低层模块DLL层接口,这并不属于依赖倒置,因为接口在低层模块,高层依赖了低层模块,只是依赖的接口而已。对于依赖倒置而言,Service层定义一个接口,Service层去调用,而DLL层去实现这个接口即可

  • 抽象不能依赖实现,而是实现依赖抽象

好莱坞原则:Don't call me,I'll call you

二、请用接口隔离原则优化 Cache 类的设计,画出优化后的类图。

Cache类中get获取缓存、put新增或修改缓存、delete删除缓存、reBuild根据配置更新相关缓存服务器上的缓存数据。rebuild方法中需要依赖put或delete等方法,也就是从类的单一职责上分析,这几个功能不能分离。但是对于普通缓存使用的客户端只需要关注get、put和delete方法即可,不需要也不能看到reBuild方法,而对于缓存管理的客户端来说只需要关注reBuild方法,所以使用接口隔离原则,做出如下类图



发布于: 2020 年 09 月 29 日阅读数: 35
用户头像

胡家鹏

关注

还未添加个人签名 2018.04.28 加入

还未添加个人简介

评论

发布
暂无评论
架构设计(作业)