依赖倒置原则和接口隔离原则

依赖倒置原则
什么是依赖导致原则:
依赖导致原则就是高层模块不依赖于底层模块, 不依赖于具体的实现细节, 大家都依赖抽象出来的规范,规则。 也被称作好莱坞原则, Don't call us, I'll call you. 框架的使用也是如此, 框架定义出标准, 我们不必关心框架的具体实现, 只要按照规范编写相关代码,配置相关文件, 框架就可以让我们的应用运行起来。
依赖倒置的关键是抽象, 如开关他不必依赖电灯的具体实现, 也不用关心控制什么设备, 当抽象出一个开关标准的时候我们就可以控制更多类型的灯, 甚至是其他电器设备.
开关的例子

可以看到抽象后开关控制更多设备, 而不必为每一种设备完成一个开关的实现.

依赖倒置原则一些场景
linux的文件系统涉及中就引入了依赖导致原则, 通过创建Inode_operation, entry_operation, directoryoperation,创建一系列标准的函数, 具体实现的文件系统如ext4, xfs, 都必须按照定义的函数进行实现。 这样linux文件操作就可以设置一个标准的流程。 而不必考虑到具体实现。
类似的网络开发过程中, 我们一般也会选择更高层的协议做为通讯标准, 因为他们屏蔽了很多物理设备通讯上的实现细节.
接口隔离原则
优化Cache
Cache 分布在多台机器上, 如果是本地应用可以调用get,put, delete方法, 如果Cache配置进行更新将通过远程调用方式进行更新。

cache 用于操作, cache manager用于缓冲管理, 分别进行接口抽象, config配置文件也进行抽象.

2020/09/30 更新 :觉得之前使用继承还是有些问题, 如果再管理类里增加工厂方法可以实现,Cache具体实现和管理类的解耦。

老师也公布了答案: 使用不通用户看到不同接口实现接口隔离。

参考及引用
架构师训练营作业-李智慧老师相关讲义
Photo by Alex Dayawon from Pexels
评论