写点什么

学习笔记 - 第二周

发布于: 2020 年 06 月 14 日
学习笔记-第二周

[TOC]



课后作业



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



  1. 高层模块不能依赖底层模块,而是大家都依赖于抽象。

  2. 抽象不能依赖实现,而是实现依赖抽象。



和好莱坞一样:



  • Don't call me, i'll call you.



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



gin 中的中间件,是通过接口的形式实现的,并且是用户实现接口,而框架去调用中间件。



请用接口隔离原则优化 Cache 类,画出优化后的类图



Cache
Object get(Object key)
void put(Object key, Object value)
void delete(Object conf)
void reBuild(Config conf)



cache 实现类中有四个方法,其中 put、get、delete方法是需要暴露给应用程序的,rebuild 方法是需要给系统进行远程调用的。如果将 rebuild 暴露给应用程序,应用程序可能会错误调用 rebuild 方法,导致 cache 服务失效。按照接口隔离原则:不应该强迫客户程序依赖它们不需要的方法。也就是说,应该是 cache 类实现两个接口,一个接口包含 get、put、delete 暴露给应用程序,一个接口包含 rebuild 暴露给系统远程调用。从而实现接口隔离,使应用程序看不到 rebuild 方法。





发布于: 2020 年 06 月 14 日阅读数: 54
用户头像

还未添加个人签名 2018.02.23 加入

还未添加个人简介

评论

发布
暂无评论
学习笔记-第二周