【发布时间】:2010-01-07 12:42:38
【问题描述】:
如何在 Visual Studio 2008 C# 项目中找到死代码? 比如未使用的类、未使用的变量或未使用的资源?
【问题讨论】:
标签: c# visual-studio maintenance
如何在 Visual Studio 2008 C# 项目中找到死代码? 比如未使用的类、未使用的变量或未使用的资源?
【问题讨论】:
标签: c# visual-studio maintenance
你可以试试FxCop,它集成在Visual Studio 2008中,名为Code Analysis。您只需右键单击项目文件并“运行代码分析”即可。
FxCop 是一个应用程序,它分析托管代码程序集(针对 .NET Framework 公共语言运行时的代码)并报告有关程序集的信息,例如可能的设计、本地化、性能和安全改进。
可以在项目属性的代码分析部分配置活动规则。例如,一些与手头案例相关的规则出现在使用规则和性能规则中:
为了获得更大的灵活性,您还可以编写自己的自定义规则 (Tutorial on writing your own Code Analysis rule)。
【讨论】:
安装JetBrains ReSharper,它将为您突出显示未使用的代码。
【讨论】:
一个非常有用的工具是NDepend 依赖分析工具。您可以将您的 Visual Studio 项目加载到其中,它将分析所有程序集、类型和方法的依赖关系。它为您提供了有关依赖项的大量信息,包括(但绝不限于!)根本不被任何东西使用的方法/类型。
您可以以图形方式或在列表中查看依赖项,并且可以编写自己的自定义依赖项查询,例如:一个简单的 CQL 查询显示可能未使用的方法:
SELECT
METHODS // Get me a list of methods
WHERE
MethodCa == 0 // Where their afferent coupling is zero, (afferent coupling being the number of other methods that call it)
强烈推荐的工具。
【讨论】:
VS 中的 Shift + F12 可用于快速检查:)
【讨论】:
虽然我不建议对大型代码库使用此方法,但您可以手动执行一定量。
如果您右键单击一个方法或类,然后选择“查找用法”,您将获得引用它的所有位置的输出。显然,如果不使用,这将是空的。
为了进行持续清理,我会安装 ReSharper
【讨论】: