首页 > 解决方案 > 责任链模式与迭代策略列表

问题描述

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;
}

`

标签: design-patternschain-of-responsibility

解决方案


推荐阅读