design-patterns - 责任链模式与迭代策略列表
问题描述
CoR 模式与将链中的项目实现为列表并让单个协调器类按顺序尝试此列表中的项目相比如何?
哪种方法更好?
例子:
Class A implements NodeInAChain{
NodeInAChain nextNode;
public Result doWork(Request request){
// Some logic
if(logicSuccessful) {
return;
else
nextNode.doWork(request);
}
}
VS
Class ChainOrchestrator {
List<NodeInAChain> nodeList;
public Result doWork(Request request){
foreach(node : nodeList) {
if(node.doWork(request) == 'success'){
break;
}
}
return result;
}
`
解决方案
推荐阅读
- python - 将更改的文本按钮状态保存回字典值列表索引 0
- flutter - 文字溢出动画
- reactjs - 边框半径在本机反应中不圆角
- python - Python使用多个术语来查找
- mysql - SQL“INSERT WHERE NOT EXISTS”语法错误
- zsh - iTerm2 启动命令被用户输入覆盖,有没有更好的方法来获取 ~/.zschrc
- c++ - xxx“未在此范围内声明”-代码在 Arduino IDE 中有效,但在 Atom/PlatformIO 中无效
- ssl - 如何使用 sed 或 awk 在两个模式之间获取最后一组文本
- mysql - 我们可以将 laravel 枚举列设置为唯一吗
- asp.net-core - 如何在 Asp.net core 中关闭 cshtml 中的 html 标签