关于职责链模式的个人理解
2017-11-03 10:58
309 查看
再没了解职责链模式之前,对于一个请求可能有很多种处理办法. 以前的做法就是 If Else 循环判断
现在了解责任链模式之后,理解之后,可能就是 一个请求处理 管理类. 将所有的处理类管理起来, 其中有个next属性,标注下一个处理类是哪个?
然后提供统一的处理接口, 接口里面判断 如果处理不成功 由下一个处理.
想起查统组件代码里 一块关于缓存的处理.
可以用于缓存的有 osCache memCache disCache等等, 但是根据缓存的特点,不是所有的内容都缓存在一种组件的,
但是可以提供统一的cache接口,
AbsStore 一个抽象的缓存接口, 含有nextStore引用.
StoreLink 就是管理所有AbsStore的实现类,同时设置每个累的nextStore,
然后 AbsStore 实现一个方法, getCache 就是先判断CacheTypeContains 这是个抽象方法,每个子类实现自己的, 如果不满足的nextStore.getCache
总结起来, 了解了设计模式 回头再去看代码更容易理解.
相关文章推荐
- 关于面向对象的几种模式和个人理解
- 关于代理模式的个人理解
- 关于android的设计模式---MVP的个人理解
- 关于KMP模式匹配算法的个人理解
- 关于ubuntu 进入单用户模式,破解root用户密码的个人理解
- 关于建造者模式的个人理解
- 关于装饰者模式的个人理解
- 关于colinux tuntap模式的个人理解
- 关于模板方法模式的 个人理解
- 关于观察者模式的 个人理解
- 关于桥接模式的个人理解
- 关于命令模式个人的理解 撤销 重做的实现
- 关于工厂模式的 个人理解
- 关于策略模式的 个人理解
- 关于备忘录模式的个人理解
- ASP.NET MVC关于验证的个人理解
- 关于高斯消元求期望的个人理解
- 几种设计模式分类的个人理解
- 理解矩阵(个人认为这是关于矩阵最精彩的理解,推荐~~)
- 关于rollup,cube,grouping sets的个人理解