在我的工作中,我最近不得不重写一个类的实现来适应它,以便它适用于我们的新系统。然而,我需要保留旧的实现,因为它仍然在使用旧系统的其他地方使用。
该类名为SecurityManager
。现在,我正在创建一个新类SecurityManager
,它将执行相同的操作,但基于更新的表。我的问题是,我不知道该怎么称呼这个新的。
我是否打电话给它:
NewSecurityManager
SecurityManager2
SecurityManager360
SecurityManager2000
SecurityManager23_09_2013
是否有任何命名约定已经解决了这个问题并提出了一些命名方案?
答案 0 :(得分:0)
最好不要更改类名,而是在旧类中添加新接口。这使得增量工作更容易(您可以逐渐使旧方法调用新方法,并最终消失)。但是,这并非总是可行。
另一种可能性是花一些时间将旧类更改为OldSecurityManager
(或将其移至OldSomething
命名空间)。通过这种方式,可以以稳定的方式“安装”新类,而不必担心会永远留在您身边的丑陋名称(或直到SecurityManager3
)。
组合解决方案是在新的前面提供旧接口的代理 - 这也使增量工作成为可能,并且更安全(特别是使用 TDD )。