gpt4 book ai didi

c# - Obsolete 属性的使用

转载 作者:IT王子 更新时间:2023-10-29 04:29:32 29 4
gpt4 key购买 nike

我最近听说在我们的代码中使用 [Obsolete] 属性标记许多方法是不好的做法。这些方法在我们的代码库内部,而不是在 API 上。这些方法处理较旧的加密功能。

我觉得这是一种快速而安全的方式,可以向团队的其他成员表明不应使用这些方法,并提供一条消息来建议替代方案。

其他人认为我应该完全删除这些方法,根据需要重写或重构现有代码。此外,人们认为忽略编译器警告太容易了。

当代码未被第 3 方使用时,是否有将代码标记为过时的“最佳实践”?或者这在很大程度上是主观的?

最佳答案

第 1 步。将成员或类标记为[过时]

第 2 步。更新成员或类的所有内部使用,以使用替换过时方法的新方法,或将该成员或类本身标记为[过时]

第 3 步。如果您在第 2 步中将新内容标记为[过时],请根据需要重复此步骤。

第 4 步。删除所有既非公共(public)成员也未被过时公共(public)成员或类使用的过时成员和类。

第 5 步。更新文档以更清楚地描述推荐的替换任何公共(public)过时成员或类的方法。

在此结束时,您将没有仅供内部代码使用的过时代码。没有什么可说的,您必须一次完成所有这些;在每个阶段你都取得了进步。开始第 1 步和结束第 5 步之间的时间可能是 5 秒或 5 年,具体取决于许多因素(其中大部分与复杂性有关)。

顺便说一句,如果有人发现忽略编译器警告很容易,那么问题不在于 [Obsolete]。然而,不要在代码中长时间保留此类调用(即尽快完成第 2 步)的一个原因是确保人们不会最终习惯于编译器警告,因为它们是编译代码的习惯性 react 。

关于c# - Obsolete 属性的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3510892/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com