写点什么

架构师训练营 - 第二周作业

发布于: 2020 年 06 月 17 日
  1. 请描述什么是依赖倒置原则,为什么有时候依赖倒置原则又被称为好莱坞原则?



依赖倒置原则:High-level modules shouldn’t depend on low-level modules. Both modules should depend on abstractions. In addition, abstractions shouldn’t depend on details. Details depend on abstractions。

好莱坞原则: 别调用(打电话给)我们,我们会调用(打电话给)你。依赖倒置原则教我们依赖抽象,不要依赖具体的类。好莱坞原则是框架设计上的一种技巧,好让底层组件能挂钩进计算中,而又不会让高层组件依赖低层组件(设计模式举例:模板方法)。两者的目标都是为了解耦和避免对底层组件的依赖。



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

sl4j框架



private static final org.slf4j.Logger logger = LoggerFactory.getLogger(ObjectFactory.class);



sl4j的实现框架可以是logback、log4j等,logback、log4j是具体实现也就是低层组件,高层层组件(调用方)和低层组件(sl4j具体的实现框架)都依赖的是抽象(org.slf4j.Logger),log4j和logback之间可以灵活切换。



  1. 作业3



  1. 总结

1、本周重点学习了软件设计的五个原则,OCP、DIP、LSP、SRP、ISP

2、关于DIP解决了我在项目中调用service究竟要不要基于接口、实现进行调用的困惑

3、老师的答疑环境个人非常喜欢,活跃了学习氛围,从侧面了解别人对于一些问题的看法,比如源码阅读、单元测试、技术成长。



用户头像

还未添加个人签名 2018.05.04 加入

还未添加个人简介

评论

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