5

我需要在单位之间进行转换,每个单位有 2 个部分,它的名称和一个整数,整数部分可以是正数或负数。我需要我的Unit班级进行依赖注入并松散耦合。例如,如果我将来需要添加一些东西,我不想更改正在使用该类的其他类。

我的单位类中还应该有一种Convert()方法可以在单位之间进行转换。我看了一下这些链接:

但这些似乎松散耦合。

请让我知道这个问题的推荐设计模式,

4

1 回答 1

2

我将为方法创建一个自定义属性,该属性指定方法可以转换的单位。然后你的转换器函数可以从被转换的项目中提取单位,并使用反射来找到那些具有转换方法的类,这些类转换为/从这些单位转换。

您确实需要一个用于转换为/从方法的核心度量单位。例如,选择公制,然后所有转换都转换为公制/从公制转换为/从第二个单位转换。然后从单位 A 到单位 B,从 A 转换为公制,然后从公制转换为 B,使用反射选择 A 和 B 转换器。

当然,由于您没有就您的请求提供太多细节,因此很难说出您到底想做什么,所以这是一个疯狂的猜测“设计”。:)

于 2012-11-14T19:38:33.030 回答