C#的设计模式,并根据字符串参数调用不同的方法

时间:2012-06-08 21:00:54

标签: c# .net windows design-patterns watin

所以我目前正在开发一个相当酷的库,我将从Excel工作表或Sharepoint List中提取数据,然后使用WatiN和.NET与C#执行各种浏览器命令以进行自动UI测试。但是,在尝试封装可能需要生成未来命令或测试的不断变化的需求时,我遇到了一个大的设计问题。目前,我需要基于命令参数(在Excel或Sharepoint列表中存储为字符串)执行大约5个独特的操作,但我想轻松地使命令数量可扩展以及执行验证以确保没有错误的命令。任何人都可以指出我正在设计模式的方向,这可能有助于我有效和健壮地实现这一点,而不是只在HandleCommand()函数中编写一个巨大的switch语句?感谢您帮助新的程序员! = d

2 个答案:

答案 0 :(得分:3)

查看command pattern以封装命令,并使用factory pattern根据命名对象创建命令对象的实例。工厂可以使用反射来确定基于文本创建的命令。

答案 1 :(得分:0)

我同意Builder和Factory Method在这里有意义。您可能不希望使用Gamma和co的“设计模式”一书中描述的基于继承的版本的工厂方法。只需使用一个静态工厂方法,该方法将Command类的名称实例化。