当前位置:  开发笔记 > 编程语言 > 正文

如何以编程方式识别使用C#的方法引用的数量

如何解决《如何以编程方式识别使用C#的方法引用的数量》经验,为你挑选了1个好方法。

我最近继承了需要修剪和清理的C#控制台应用程序.简而言之,该应用程序由一个包含超过110,000行代码的类组成.是的,一个班级超过110,000行.而且,当然,该应用程序是我们业务的核心,运行'全天候更新动态网站上使用的数据.虽然我被告知我的前任是"一个非常优秀的程序员",但显然他根本没有进入OOP(或版本控制).

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

我想编写一个简单的控制台应用程序,它可以遍历一个巨大的类,并返回所有方法的列表,其中包含每个方法的引用次数.根据我的估计,有超过1000种方法,所以手动这样做需要一段时间.

我可以使用.NET框架中的类来检查此代码吗?或者任何其他有用的工具,可以帮助识别声明但从未引用的方法?

(旁边的问题:有没有其他人见过像这样的C#应用​​程序,一个大的类?它或多或少是一个巨大的程序过程,我知道这是我见过的第一个,至少是这个大小.)



1> Romain Verdi..:

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

推荐阅读
Chloemw
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有