写点什么

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

用户头像
韩儿
关注
发布于: 2020 年 11 月 01 日

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

为了实现面向对象设计的软件具有强内聚,低耦合的特性,软件设计必须遵循设计原则和设计模式。依赖倒置原则,英文叫dependencyinversion principle是面向对象编程的五大原则之一。



在一般的软件设计中,大家容易想到的是先开发低层模块,然后由低层模块定义出接口,被高层模块调用。这样就会造成高层模块依赖低层模块。当低层模块需要做出改变时,会导致高层模块也需要作出改变。这样的程序对于开发维护来说都是很不方便的,牵一发而动全身。



依赖倒置原则是说高层模块不能依赖低层模块,而是大家都依赖于抽象。同时抽象不能依赖实现,而是实现依赖抽象。在设计的时候,由高层模块定义一个接口,然后低层模块来实现这个接口。高层决定低层。当底层模块需要改变时,只需要改变低层模块自己的程序,高层模块不需要改变。当高层模块需要改变时,只要它仍然调用同一个接口,低层模块也不需要改变。从而实现了软件的易开发,易维护,易扩展的特性。



依赖倒置指的是倒置了模块的依赖关系,由一般的高层依赖低层,改为低层依赖高层的接口。同时开发的顺序也倒置了,先开发出高层的接口,再开发低层的实现。



好莱坞原则是指don’t call me ,I will callyou.依赖倒置原则是指高层定义接口,并调用低层模块。低层不调用高层,高层会调用低层,所以依赖倒置原则有时也叫好莱坞原则。依赖倒置原则,是各种软件框架的设计核心。框架是由高层定义接口,框架不依赖代码,而是依赖接口进行开发和设计。用户只需要具体实现各种接口,就可以被框架高层模块所调用,从而实现一个完整的软件系统。用户不需要了解和接触到各种高层模块,大大降低了软件开发的难度和效率。

2.设计cache类图



用户头像

韩儿

关注

还未添加个人签名 2020.03.08 加入

还未添加个人简介

评论

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