接口隔离原则设计缓存 Cache 工具类
将缓存工具类 Cache 进行改造按照接口隔离原则进行改造
提示:cache 实现类中有四个方法,其中 put get delete 方法是需要暴露给应用程序的,rebuild 方法是需要暴露给系统进行远程调用的。如果将 rebuild 暴露给应用程序,应用程序可能会错误调用 rebuild 方法,导致 cache 服务失效。按照接口隔离原则:不应该强迫客户程序依赖它们不需要的方法。也就是说,应该使 cache 类实现两个接口,一个接口包含 get put delete 暴露给应用程序,一个接口包含 rebuild 暴露给系统远程调用。从而实现接口隔离,使应用程序看不到 rebuild 方法。
Java 代码样例:
总结:
接口隔离原则,调用者只能访问它自己的方法,不能访问到不应该访问的方法。似乎感受到了设计原则在代码实现上的美。
总结(第二周)
面向对象设计的目标(高内聚,低耦合)易扩展,更强制,可移植,更简单。反例如:僵硬,脆弱,不可移植,导致误用的陷阱,晦涩,过度设计,copy-paste 代码。
设计原则:
开闭原则(对于扩展开发,对于更改关闭)
不需要修改软件的实体(模块,函数,类等)就应该能实现对功能的扩展。可应用设计模式有:策略模式,适配器模式,观察者模式。
依赖倒置原则
高层不依赖低层,而大家都依赖抽象,抽象不依赖实现而实现依赖抽象。
Liskov替换原则(里氏替换原则)
子类型必须能够替换掉他们的基类。
版权声明: 本文为 InfoQ 作者【王鹏飞】的原创文章。
原文链接:【http://xie.infoq.cn/article/6a7ab87aaa4caa65d62867b99】。文章转载请联系作者。
评论