第二周作业
1.依赖倒置原则
A.高层次的模块不应该依赖于低层次的模块,他们都应该依赖于抽象。
B.抽象不应该依赖于具体实现,具体实现应该依赖于抽象。
依赖倒置原则(Dependence Inversion Principle)是程序要依赖于抽象接口,不要依赖于具体实现。简单的说就是要求对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模块间的耦合。
好莱坞原则(Hollywood Principle):别打电话给我们,有事我会打电话给你。
好莱坞原则是用在系统的高层组件与底层组件之间。高层组件不应该直接调用底层组件,而是从容器获取。
也就是底层不需要主动提供组件给高层,而是放在容器中,当高层需要时,自己从容器中获取。
2.Spring的IOC容器,
组件是从容器获取,而不是高层组件直接调用底层组件。
把对象组装成bean,注册到容器中,应用层需要某一个bean时注入即可。
组件的管理交给容器负责,需要哪个组件直接注入进来,低耦合。
3.接口隔离原则:接口隔离原则的英文翻译是“ Interface Segregation Principle”,客户端不应该被强迫依赖它不需要的接口。其中的“客户端”,可以理解为接口的调用者或者使用者
补充:BuildCache 里面定义了方法getRebuildCache();因为实现了RebuildCache接口,要实现reBuild方法。
getRebuildCache()方法里调用自身到reBuild方法。可以不需要考虑CacheConfig到创立,只需要调用方法就可以获取到Cache
评论