写点什么

第二周作业

用户头像
Jam
关注
发布于: 2020 年 09 月 19 日

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

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

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

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

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



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

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



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





用户头像

Jam

关注

还未添加个人签名 2018.03.21 加入

还未添加个人简介

评论

发布
暂无评论
第二周作业