责任链:循环还是下一个?

 怡智俊婷珮婷 发布于 2023-02-13 10:52

我正在实施一系列责任模式.

我有不同的策略可以组合在一个列表中,我有一个处理策略列表的处理器.每个策略都可以处理CustomInput,并可以选择是否也应该处理其余策略.

interface Policy {    
  public boolean process(CustomInput input);    
}

interface Processor {    
  public void process(List policies, CustomInput input)    
}

我打算在策略列表上实现Processor循环,并检查每个策略的布尔结果,以了解是否继续使用其余策略.

我的同事建议将下一个策略传递给每个策略,让他们调用(或不调用)下一个策略(例如FilterChain).

我的问题如下:

我在第二个解决方案中没有看到任何好处(将下一个策略传递给当前处理的策略),而不是循环遍历每个策略并检查它的结果?

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有