Dll 在单类库中处理多个标准
我目前正在从事一个名为ADIF的项目,该项目将支持多个文件编写规范(假设您必须支持XML 1.0、XML 2.0、XML 3.0等)。目前有两个标准(版本1.0和版本2.2.2),它们都在商业上使用,并且仍然大量使用 规范版本2.2.2包含了版本1.0的大部分内容,但有一些细微的差异,排除了一些继承和其他OOP工具 您将如何组织项目以支持旧版本,同时继续跟上新标准Dll 在单类库中处理多个标准,dll,specifications,class-library,Dll,Specifications,Class Library,我目前正在从事一个名为ADIF的项目,该项目将支持多个文件编写规范(假设您必须支持XML 1.0、XML 2.0、XML 3.0等)。目前有两个标准(版本1.0和版本2.2.2),它们都在商业上使用,并且仍然大量使用 规范版本2.2.2包含了版本1.0的大部分内容,但有一些细微的差异,排除了一些继承和其他OOP工具 您将如何组织项目以支持旧版本,同时继续跟上新标准 单个类库中的名称空间(Standard.Version1、Standard.Version222、Standard.Version
- 单个类库中的名称空间(Standard.Version1、Standard.Version222、Standard.Version223(下一个版本?),等等)?看起来很马虎
- 在同一解决方案中为每一个单独的类库(Version222.dll、Version223.dll等)?似乎太过分了
- 等等
您说过没有一个好的固有层次结构可以实现吗 如果是这样,我建议您遵循库的名称空间技术,它可以使用dll中可能的任何公共性来减少您自己的工作负载。拥有两个api将使您更容易进行测试,并且可以很好地处理版本之间的差异问题 i、 e.您的2.2.2版api将只接受2.2.2版的对象,以防止库中出现问题。祝你好运,无论你实施什么:) 规范版本2.2.2包含了版本1.0的大部分内容,但有一些细微的差异,排除了一些继承和其他OOP工具 对象组合对于OOP来说可能比继承更强大,因为继承被过度使用了 您可以找到哪些方法将问题分解为更简单的子系统