2009-10-23 51 views
1

当我们接近.NET框架的第四个主要版本时,我们可能会看到标记为过时的类和方法数量的增加(以表明它们已被弃用)。我发现这个网页列出了所有的obsolete memberstypes,现在它正在变得相当大。什么时候,如果有的话,你会期望从.NET框架中删除标记为过时的类吗?

所以,我想知道是否:

  1. 任何成员或类型标记为过时已实际从框架的任何版本中删除? .NET 1中的元素有没有在以后的版本中?

  2. 是否有任何正式的指导方针微软将关于元素何时被删除?这是X发布的数量?经过的时间?或者是否可能被弃用的元素将永久保存?

回答

2

从框架中删除过时的类的问题在于,它将成为重大更改以针对构建的应用程序构建,而应用ObsoleteAttribute则不适用。

因此,我不指望在不久的将来,任何时候都不会看到任何标记为过时的类。

2

最合理的方法是将它们永远留在那里以保持向后兼容性。

+0

虽然这不会减少人们使用替代品的动机吗?我认为这个想法是,如果人们想要使用这些方法,他们将不得不针对早期版本的框架。 – 2009-10-23 10:46:53

+0

它可能会更好,但它比一次简单地将它们全部拧紧。无论如何,编译期间可怕的数百条警告消息(不赞成使用)会迫使大多数优秀的开发人员更新他们的东西。 – 2009-10-23 10:49:33

+0

ObsoleteAttribute是一个很好的机制,可以在不破坏早期代码的情况下将人们指向更新/更好的代码。使用非过时代码的动机大概是过时实现的效率/特征/易用性。 – nsantorello 2012-02-02 21:01:28

相关问题