架构师训练营 - 作业 2

用户头像
紫极
关注
发布于: 2020 年 06 月 17 日
架构师训练营-作业2

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

依赖倒置原则

定义:高层模块不应该依赖低层模块,二者都应该依赖于抽象

抽象不应该依赖于实现,实现应该依赖于抽象

理解:DIP 倒置的是依赖的顺序,之前是直接依赖实现,现在依赖抽象接口,等你需要的时候再注入进来具体的实现。这也就是写代码经常用的依赖注入(DI)。

比如:最近长胖了,你需要减肥,然后你减肥的方法可以是跑步,跳绳,拳击等等,无论你选择哪一个,最终结果是你减肥成功了(😀)。



依赖倒置原则的核心思想就是面向接口编程。



好莱坞原则

定义:Don't call me, I'll call you.

理解:演艺公司寻找演员,而不是演员寻找演艺公司,当拍电影时,这部电影需要某个类型的角色,然后演艺公司就去寻找一个适合的某个角色的演员来演



依赖倒置原则 = 好莱坞原则

结论:都是现在要某一类人或物,然后获得这类人或物的一个具体体现。



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

dotnet core 的依赖倒置

dotnet core 中的依赖倒置是使用IOC容器来实现的。

先声明一个接口,然后实现一个实现类,最后在IOC容器中在注入这个接口和实现的关系,

最后在在使用方使用接口来处理具体方法。

3. 请用接口隔离原则优化Cache类的设计,画出优化后的类图

需求:cache类实现4共方法:get、put、delete、reBuild。

客户端只能调用get、put、delete,不能调用rebuild,不然会导致功能异常

后台远程可以调用rebuild方法,以重新配置cache类



用户头像

紫极

关注

还未添加个人签名 2018.08.28 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营-作业2