我正在寻找一种设计模式来解决以下问题:
阅读输入
处理数据(包含验证)
保存结果
示例如下: 读取csv文件,处理数据,另存为xml 读取MQ消息,处理数据,保存到数据库。
我在考虑一个BusinessObject:
IInput
实现来处理读取和加载本身。IOutput
实现来处理保存本身。e.g。 (伪代码!)
public abstract class BusinessObject
{
public IInput Input { get; set; }
public IOutput Output { get; set; }
public BusinessObject(IInput input, IOutput output)
{ }
}
然后有一个Load,Process和Save方法。
然而,这对我来说似乎并不合适。我认为 BO应该能够加载和保存自己吗?
如果有人知道这可能是什么样的模式,那么我可以阅读它,或者给我一个例子/解释,我将非常感激。
答案 0 :(得分:4)
您可能会使用管道模式。在该模式中,您定义了一个组件链(管道组件;链就是管道),并为其提供输入数据。然后,每个管道组件依次执行通过管道推送的数据。任何组件都可以从该数据读取数据并将数据写入该数据。
另见: