架构师训练营第二周作业 (1)

用户头像
hiqian
关注
发布于: 2020 年 06 月 16 日

https://xie.infoq.cn/article/1e498b405d68cba8e6ef3548a

https://xie.infoq.cn/article/4b2b341d10b0da947fd213f8b

https://xie.infoq.cn/article/926b4f81db7014f260e8dbc90



以上为第二周作业地址



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



1.依赖倒置原则(DIP):a. 高层模块不应该依赖于低层模块,二者都应该依赖于抽象。b.抽象不应该依赖于细节。细节应该依赖于抽象。



传统的软件开发方法,比如结构化分析和设计,总是倾向于高层模块依赖于低层模块,策略依赖于细节的软件结构,这意味着低层模块的改动会直接影响到高层模块,从而迫使它一次做出改动。

实际上,应该是高层的策略设置模块去影响低层的细节实现模块。包含高层业务规则的模块应该优先并独立于包含实现细节的模块。无论如何高层模块都不应该依赖于低层模块。我们更希望重用的是高层的策略设置模块。如果高层模块独立于低层模块,那么高层模块就可以非常容易的被重用。该原则是设计框架的核心原则。

2.好莱坞原则:这个原则的口号是:不要调用我们,我们会调用你。该原则使得低层模块实现了在高层模块中声明并被高层模块调用的接口。通过这种倒置接口所有权,下层模块的任何改动都不会影响到上层模块,上层模块可以在定义了任何符合其定义条件的下层模块的上下文中重用。这样,通过倒置这些依赖关系,创建了一个更灵活,更初九,更易改变的结构。基于上述,好莱坞原则和依赖导致原则的特点是一致的。所以依赖倒置原则又被称作是好莱坞原则。



用户头像

hiqian

关注

还未添加个人签名 2018.12.04 加入

还未添加个人简介

评论

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