2009-01-22 80 views
1

您是否有一个API或类的命名约定,用于替换执行相同功能/填充相同角色的旧版本的API或类?替换API /类的命名约定

E.g. Windows通过在功能的末尾添加“Ex”来实现此目的:

ShellExecute // old 
ShellExecuteEx // new 

你喜欢什么,以及你有什么推理?

  • 追加2V2NewNowInStereo
  • 将旧API的一次性更名从Something更改为SomethingOld并使用Something作为新内容?这个选项在版本控制方面让我感到担忧,但它似乎最不可能在将来遇到V3ReallyNew问题。
  • 构成一个完全不同的名称,可能会更准确地描述函数,但至少是不同的。
+0

是的,我不知道ShellExecuteExExExExExExEx包含多少Ex'es – 2009-01-22 21:21:34

回答

0

为什么要改变它呢?接口就是它们的合约,为什么在所有事情都使用它之后就会破坏接口。

编辑:对不起,别别扭扭您的评论乔希...

我认为,如果你去了麻烦创建界面,你需要尽你所能去维护它。你以前评论过什么样的错误选择?

1

如果新的类与旧的类执行相同的功能,我删除旧的,并用相同的名称替换它。如果需要,我仍然可以在版本控制中咨询旧版本。

1

大多数情况下,您可以通过更改软件包名称而不是类名称本身来获得。