C#:“过时”功能和“弃用”功能有什么区别?

时间:2015-09-15 09:17:56

标签: c# function deprecated difference obsolete

C#具有名为“Obsolete”的属性,表示不再使用该函数。在.net API规范中,当类/函数过时时,我们说这是“已弃用”。所以我想知道“过时”和“弃用”之间的区别。

  1. 如果他们的意思相同,我们不需要2个字,对吗?
  2. 如果他们的意思不同,为什么有时他们似乎在谈论同一个概念呢?
  3. 感谢。

1 个答案:

答案 0 :(得分:1)

根据english.stackexchange.com

  

我认为没有严格遵守的区分强制执行   在计算机科学领域。但在我所拥有的大多数情况下   阅读,已弃用或多或少是一个“标记”,说它不应该   使用,创造了具有相同效果的其他东西,和   它很快就会被删除。它可能仍然按预期工作(阅读最后一个   关于我为什么说可能的段落,但它很快就会消失。这是   故意在软件开发生命周期中完成   从一个系统转换到另一个系统 - 所有的功能   维护旧系统以确保所有过去的程序   仍然有效,它为开发人员提供了转换代码的时间   转到新系统。

     

过时意味着它不再按预期工作,或者不能工作   任何事情。正如它暗示的那样,这与非功能性不同   它是通过新功能或其功能呈现的   在新参数下根本不再相关。

     

当两个函数都是时,这两个术语之间的界限变得模糊   已弃用且已过时。大多数时候,一个过时的功能得到   已弃用,因为最好阻止开发人员使用它,   并删除它。因为通常建议不要使用   不推荐使用的函数,无论函数是否过时都是   无关紧要,因而是两个术语的混淆。