用于转换不同“类型”之间的值列表的模式

时间:2012-09-24 12:36:14

标签: design-patterns

我正在制作一个能够在某些类型的数据(坐标点)之间进行转换的程序。我用户输入他们输入的数据类型,他们想要的数据类型和点列表。所以,我必须迭代列表来解析和验证数据。然后进行适当的转换。

目前我有4种可能的接受类型(将来可能会添加更多类型),每种类型的坐标点都有其代表类但不是每个类都可以转换为另一种类型,有时需要做更多的事情。此外,任何数据都可以转换为任何其他类型。

目前,我只是有一堆条件语句来实现,解析,验证和转换。我希望以高效和模块化的方式实现这一点,以便将来轻松添加更多转换类型。我只是认为有一堆条件语句不是模块化的方式,所以我正在寻找一种设计模式或方法来组织我的代码,以便将来很容易修改。非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

检查strategy pattern。简而言之,您将拥有一个通用接口,可以实现许多类(每种数据格式一个)。当用户选择其中一种类型时,您可以查找它(例如在字典中)并实例化正确的类来处理数据。