0

你有没有写过一个函数 Foo,在你的程序中使用它,然后最终决定重构你的代码并重写另一个比 Foo 更好的函数 Bar,并决定“哦,好吧,从现在开始我们将使用 Bar 而不是 Foo ”。但是,您决定将 Foo 声明为函数 Bar 的别名,而不是仅仅删除 Foo 并替换代码中出现的每个 Foo ?

你们中的一些人可能会说:为什么不直接重写函数 Foo 并将其名称保留为 Foo,这样就不必将每次出现的 Foo 都替换为 Bar ?好吧,由于重构,Foo 不再是一个合适的名称,因为它不能反映函数的作用,所以我决定不保留它的名称。

这是某种追溯兼容性吗?

编辑:假设

  1. Foo 是你们中的一位同事写的
  2. 说同事习惯了 Foo
  3. 你是故事中认为比其他人更聪明并写了酒吧的白痴
4

1 回答 1

1
Foo was written by one of you coworkers
said coworkers are used to Foo
you're the moron in the story who thinks is smarter than the others and wrote Bar

询问您的同事并解释为什么要重命名它。除非他们真的相信原始名称更好,否则他们可能不会在意。如果该方法在面向公众的 API 中或被数百名开发人员使用,则弃用它。否则,只需使用重构工具在任何地方重命名即可。

如果你想让你的代码读起来像 DSL 并且想要两种方式来表达同样的事情(比如在 Ruby 中),你也可以给它取别名。

于 2012-05-24T17:55:36.887 回答