第二周 框架设计 作业一 「架构师训练营 3 期」
一、请描述什么是依赖倒置原则,为什么有时候依赖倒置原则又被称为好莱坞原则?
依赖倒置原则是指高层模块不要依赖低层模块。高层模块和低层模块应该通过抽象来互相依赖。除此之外,抽象不要依赖具体实现细节,具体实现细节依赖抽象。程序要依赖于抽象接口,不要依赖于具体实现。简单的说就是要求对抽象进行编程,不要对实现进行编程,这样就降低模块间的耦合。
总结起来主要有以下两点:
高层模块不应该依赖底层模块,二者都应该依赖抽象。
抽象不应该依赖具体实现,具体实现应该依赖抽象。
好莱坞原则
“不要给我们打电话,我们会给你打电话(don't call us, we'll call you)”这就是著名的好莱坞原则。在好莱坞,演员把简历递交给演艺公司后就只有回家等待。由演艺公司(高层)对整个娱乐项的完全控制,演员(底层)只能被动式的接受公司的差使,在需要的环节中,完成自己的演出。所以依赖倒置原则也被称为好莱坞原则,如 Tomcat、Spring 都是基于这个原则设计出来的,应用程序(底层)不需要调用 Tomcat 或者 Spring(高层)这样的框架,而是框架调用应用程序。
二、 请用接口隔离原则优化 Cache 类的设计,画出优化后的类图。
类图:
评论