Bre*_*len 10 .net versioning document class
在我工作的项目中,我们处理医疗账单.
每次状态对官方表单(我们的数据类表示)进行更改时,为了保持与以前表单的向后兼容性,我们添加新属性但保留旧属性,并具有使用的文档版本属性确定完成哪些验证以及显示它的UI操作.
这导致了项目生命周期内的繁琐课程(近5年的国家法定变更),而且根本不支持旧文档格式不是一种选择.
我想尝试为每个文档版本创建一个新类,但即使这样,我们也会有几个非常相似(虽然稍有改动)代码的副本.而ProgressNoteV16,ProgressNoteV17等类名看起来很可怕.
不能使用继承,因为这仍然会导致相同的问题(具有不再需要的属性的类).接口会使接口变得臃肿,这无法解决问题.
用于解决此问题的解决方案和最佳实践是什么?
对于任何与公众合作的机构来说,这是一个相当经典的问题,特别是如果它是政府或政府监督的机构.解决方案非常重要,它可能需要一些重要的工作来创建,以及之后的维护.
这对我来说在为客户处理类似问题时起了作用,但它可能对你不起作用,你需要草拟你想要完成的事情以及是否有意义这样做.
有几种模式需要熟悉(如果你还没有):
有两本书非常适合解释这些(以及其他一些有用的):
现在我过去使用的过程:
希望能给你一些关于做什么的想法.