架构师第二周课后作业
1、请描述什么是依赖倒置原则,为什么有时候依赖倒置原则又被称为好莱坞原则?
依赖倒置原则是指:高层模块不能依赖于底层模块,他们都共同依赖于抽象;抽象不依赖于实现细节,而是实现细节依赖于抽象。从而实现模块之间的高内聚与低耦合。
好莱坞原则:"don't call me,i'll call you "是指高层组件与低层组件之间,低层组件不要直接调用高层组件,而是挂钩到系统中,具体如何调用和什么时候调用,由高层组件来决定。
两者具有相似性,但也存在一些差别:依赖倒置原则强调尽量避免使用具体的类,而要使用抽象;好莱坞原则强调的是一种框架实现的技巧,让底层组件能被挂钩到计算中,但又避免高层组件对低层组件的依赖。两者的目标都在于解耦
2、请描述一个你熟悉的框架,是如何实现依赖倒置原则的。
tomcat 实现的依赖倒置原则:我们开发的 web 应用程序部署在 tomcat 窗口下,就可以被 tomcat 容器所调用,这里 tomcat 容器就是高层模块,我们开发的 web 应用程序就是低层模块,高层模块不依赖于低层模块,它们都依赖于共同的抽象 servlet 规范。servlet 规范不依赖于具体的应用程序实现细节,而是由应用程序来实现细节,依赖于 servlet 抽象规范。这样就实现了一个依赖倒置原则的设计原则。
3、请用接口隔离原则优化 Cache 类的设计,画出优化后的类图。
说明:
1、类 cache 实现 icache 和 iremotecache 接口
2、icache apperver = new cache();
iremotecache remoteserver = new cache();
版权声明: 本文为 InfoQ 作者【傻傻的帅】的原创文章。
原文链接:【http://xie.infoq.cn/article/b80b36a032884d9115aa5f646】。文章转载请联系作者。
评论