Week2- 作业
作业一
一。描述依赖倒置原则
DIP定义
1.高层模块不依赖底层模块,而大家都依赖抽象
2.抽象不能依赖实现,而是实现依赖抽象
分析:
有三个方面
1.以往对方法的扩展可能很多的时候选用if else的方式,但是这种方式耦合性强,代码臃肿,不利于扩展,结合DIP的思想,大家都是依赖抽象的,这样扩展时只要新增对抽象的实现类便可扩展新的功能。
2.抽象应该放在高层,具体的实现高层不去关注,底层只要按高层抽象约束,实现方法即可,这样的方式,高层的代码维护性好,耦合性低,低层模块变动不需要变动高层模块的代码。
3.代码的实现上实际上采用的是策略模式方式,也就是多态的使用。
总结
1.模块或包的依赖关系:这种设计模式能更好该关系,高层决定低层(低层可以理解为工具类而已)
2.开发顺序和职责:会使顺序和职责更明确,而且高层模块更贴近业务,高层模块去定义抽象,变动会更少,维护性会更好。
二。为什么有时候依赖倒置原则又被称为好莱坞原则?
好莱坞原则是 don't call me,i call you, 这个是基于依赖倒置的原则上,为的就是低耦合,
框架的使用就是 不需要调用框架的内容,框架会来调自己写的实现。
作业二
spring框架
1.使用中没有去直接调用spring的代码
2.spring是通过注解方式告诉框架,各个类是什么作用
3.spring通过注解进行解析调用,实际开发也是去满足spring约束而已
作业三
评论