我有两个进程,只是在它们的处理样式的实现上有所不同。Process1 -处理需要以一种方式处理的项目列表,而Process 2处理需要以另一种方式处理的项目列表
我想处理一个项目列表,然后根据项目的特定属性让它们通过进程1和进程2。
然后我想要一个组合输出列表中有多少项在每种样式中得到了处理。
我选择使用"Chain of Resp“模式。我想知道这是不是一个好的选择
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()发布于 2011-10-26 03:01:09
我将使用为列表编写自己的Composite,并为其提供以下方法:
class Composite {
Composite filter(Filter f);
void apply(Function f);
}您可以分离出过滤和应用函数,这为您提供了更多的可扩展性选项,而组合将为您处理迭代。复合类本身可以处理应用不同过滤器的结果的报告。
https://stackoverflow.com/questions/7894278
复制相似问题