架构师训练营 -week02- 作业
1. 请描述什么是依赖倒置原则,为什么有时候依赖倒置原则又被称为好莱坞原则?
DIP, Dependency Inversion Principle
依赖倒置是一种解耦合的方式。首先通过对底层实现进行抽象,得到接口;供上层使用,使上层不必依赖底层模块;然后底层再实现抽象接口的细节,从而实现工作流程的预定义。
依赖倒置又被称为好莱坞原则,“不要给打电话,我们会给你打电话(don‘t call us, we‘ll call you)”。在好莱坞,把简历递交给演艺公司后就只有回家等待。由演艺公司对整个娱乐项的完全控制,演员只能被动式的接受公司的差使,在需要的环节中,完成自己的演出。
2. 请用接口隔离原则优化 Cache 类的设计,画出优化后的类图。
根据上图,将 Cache 接口拆分成两个接口,BasicCache 以及 RebuildCache, BasicCache 主要包括 get,put,delete 方法,RebuildCache 接口主要包括 rebuild 方法,当应用层需要使用时,使用 AppBasicCache,与不需要的 rebuild 接口进行隔离,避免用户使用错误,当远程调用时,使用 RemoteCache,设计图如下:
评论