gpt4 book ai didi

c# - 如何以编程方式识别对 C# 方法的引用数

转载 作者:太空狗 更新时间:2023-10-29 22:05:01 24 4
gpt4 key购买 nike

我最近继承了需要一些修剪和清理的 C# 控制台应用程序。长话短说,该应用程序由一个包含超过 110,000 行代码的类组成。是的,一个类中有超过 110,000 行。当然,该应用程序是我们业务的核心,它全天候运行,更新动态网站上使用的数据。虽然有人告诉我我的前任是“一个非常优秀的程序员”,但很明显他根本不喜欢 OOP(或版本控制)。

无论如何...在熟悉代码的过程中,我发现了很多已声明但从未被引用的方法。看起来好像使用了复制/粘贴来对代码进行版本控制,例如,假设我有一个名为 getSomethingImportant() 的方法,很可能还有另一个名为 getSomethingImortant_July2007() 的方法(在大多数情况下,模式是 functionName_[datestamp])。看起来当程序员被要求对 getSomethingImportant() 进行更改时,他会复制/粘贴然后重命名为 getSomethingImortant_Date,对 getSomethingImortant_Date 进行更改,然后将代码中的任何方法调用更改为新方法名称,将旧方法保留在代码但从未被引用。

我想编写一个简单的控制台应用程序,它可以爬过一个巨大的类并返回所有方法的列表以及每个方法被引用的次数。据我估计,有超过 1000 种方法,因此手动执行此操作需要一段时间。

.NET 框架中是否有可用于检查此代码的类?或者任何其他可能有助于识别已声明但从未引用的方法的有用工具?

(附带问题:有没有其他人见过这样的 C# 应用程序,一个非常大的类?它或多或少是一个巨大的程序过程,我知道这是我第一次看到,至少是这种规模。)

最佳答案

您可以尝试使用 NDepend如果你只需要提取一些关于你的类(class)的统计数据。请注意,此工具在内部依赖 Mono.Cecil 来检查程序集。

关于c# - 如何以编程方式识别对 C# 方法的引用数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/106329/

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