2

在我的工作中,我最近不得不重写一个类的实现以使其适应我们的新系统。然而,我需要保留旧的实现,因为它仍然在使用旧系统的其他地方使用。

该类称为SecurityManager. 现在,我正在创建一个新类SecurityManager,它将执行相同的操作,但基于更新的表。我的问题是,我不知道如何称呼这个新的。

我叫它:

  • NewSecurityManager
  • SecurityManager2
  • SecurityManager360
  • SecurityManager2000
  • SecurityManager23_09_2013

之前是否有任何命名约定解决了这个问题并提出了一些命名方案?

4

1 回答 1

0

最好不要更改类名,而是在旧类中添加新接口。这使得增量工作更容易(您可以逐渐让旧方法调用新方法,并最终消失)。然而,这并不总是可能的。

另一种可能性是花一些时间将旧类更改为OldSecurityManager(或将其移动到OldSomething命名空间)。这样,新类可以以稳定的方式“安装”,而不必担心一个丑陋的名字会永远留在你身边(或直到SecurityManager3出现)。

组合解决方案是在新接口之前提供具有旧接口的代理 - 这也使得增量工作成为可能,并且更安全(尤其是TDD)。

于 2013-09-23T19:20:11.020 回答