首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >设计模式回顾

设计模式回顾
EN

Stack Overflow用户
提问于 2011-10-26 02:47:03
回答 1查看 87关注 0票数 0

我有两个进程,只是在它们的处理样式的实现上有所不同。Process1 -处理需要以一种方式处理的项目列表,而Process 2处理需要以另一种方式处理的项目列表

我想处理一个项目列表,然后根据项目的特定属性让它们通过进程1和进程2。

然后我想要一个组合输出列表中有多少项在每种样式中得到了处理。

我选择使用"Chain of Resp“模式。我想知道这是不是一个好的选择

代码语言:javascript
复制
Dim proc1 As New Process1
Dim proc2 as New Process2

proc1.nextProcessing(proc2)
For each itm in itmlst
  proc1.ProcessItem(itm)
Next

proc1.DoSomething()
proc2.DoSomething()

--result is an object that resturns the list of items processed by that process.
Dim result1= proc1.EndPRocess()
Dim result2= proc2.EndProcess()
EN

回答 1

Stack Overflow用户

发布于 2011-10-26 03:01:09

我将使用为列表编写自己的Composite,并为其提供以下方法:

代码语言:javascript
复制
class Composite {
   Composite filter(Filter f);

   void apply(Function f);
}

您可以分离出过滤和应用函数,这为您提供了更多的可扩展性选项,而组合将为您处理迭代。复合类本身可以处理应用不同过滤器的结果的报告。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7894278

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档