Nit*_*rai 2 c# oop design-patterns
我有一个功能,可以在数据库中保存一条消息.根据类型保存消息有不同的方案.例如,我有保存消息,保存消息以进行修复,以及从XML保存消息.
一个明智的方法是创建一个带有参数的单个函数,该参数指定操作类型,并且有一个switch case可以在调用三个不同的方法之间进行选择吗?
到目前为止我想出了这个:
public bool SaveMessage(Message message,
List<Image> images,
List<Attachments> attachments,
string type);
Run Code Online (Sandbox Code Playgroud)
和其他有三种方法:SaveMessage(),SaveMessageForRepair(),和SaveMessageXml().
这是一种合理的方法吗?
使用策略模式.
定义一系列算法,封装每个算法,并使它们可互换.策略允许算法独立于使用它的客户端.
http://www.dofactory.com/Patterns/PatternStrategy.aspx