知识卡片
责任链融合模板方法模式让子类只关注自身业务
内容
[[责任链模式的定义与传递判断机制]]中的抽象Handler类是[[模板方法模式的两类方法]]的 应用:handleMessage是被final锁定的模板方法,负责判断级别和转发;子类只需实现 getHandlerLevel和echo两个基本方法。发散:这是本书第二次展示”把重复机制逻辑上移到模板 方法父类”的手法,说明模板方法经常扮演”给其他模式打地基”的角色。
参考来源
- 位置:《设计模式之禅(第2版)》第16章《责任链模式》(源文件:_epub-src/text/part0074.html)
- 结论依据:原文明确"Handler是抽象类,融合了模板方法模式,每个实现类只要实现两个方法:echo方法处理请求和getHandlerLevel获得处理级别……父类实现了请求传递的功能,子类实现请求的处理,符合单一职责原则"。
- 原始内容:Handler是抽象类,融合了模板方法模式,每个实现类只要实现两个方法:echo方法处理请求和getHandlerLevel获得处理级别……通过融合模板方法模式,各个实现类只要关注的自己业务逻辑就成了……符合单一职责原则,各个实现类只完成一个动作或逻辑。