架构师训练营 第二周作业

发布于: 2020 年 06 月 17 日
架构师训练营 第二周作业

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

依赖倒置原则就是,高层次的模块不应该依赖于低层次的模块,两者都应该依赖于抽象接口。抽象接口不应该依赖于具体实现,而具体实现则应该依赖于抽象接口。

“不要给我们打电话,我们会给你打电话(don't call us, we'll call you)”这是著名的好莱坞原则。 在好莱坞,把简历递交给演艺公司后就只有回家等待。 由演艺公司对整个娱乐项的完全控制,演员只能被动式的接受公司的差使,在需要的环节中,完成自己的演出。

高层模块就是演艺公司,演员就是底层模块。高层模块只需要定义好提供简历的接口,之后随时打电话调用底层模块就可以了。

其实依赖倒置原则中的隐含着,接口的定义应该由高层定义,因为高层负责更高层级的业务。所以虽然高层调用底层的功能,但是功能的接口却是应该由高层定义。这才有了反转。

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

Tomcat运行Java Web程序,Tomcat就是高层模块,Java Web程序是底层模块。但是Tomcat不依赖于Java Web程序,他作为容器可以运行任何Java Web程序。只需要Java Web程序满足了Servlet接口规范就可以。高层和底层模块都依赖于Servlet规范,而高层不依赖于底层的具体实现。

作业三:请用接口隔离原则优化 Cache 类的设计,画出优化后的类图。

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

孙有能希

关注

还未添加个人签名 2018.02.25 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营 第二周作业