我已经接管了一个非常大的(> 2M SLOC)软件项目的维护,所有这些都是用 C# 编写的。文档很少。我现在想要对具有公共接口(大约 400 个)的模块进行更改,但我不知道解决方案中的所有其他模块(总共大约 50 个)可能正在使用这个公共接口。
对于这种情况,您将如何创建接口依赖关系使用树?代码库太大,无法简单地浏览 Project Explorer 并阅读源代码。您使用了哪些工具或方法来创建这种类型的依赖关系分析树?
我不想购买任何工具。诸如 Class View 之类的 Visual Studio 工具似乎不能很好地处理这种规模的项目。我曾考虑编写自己的 sed/awk/perl-ish 脚本,该脚本简单地遍历源代码并使用模式匹配来构建我自己的依赖项/接口使用数据库,但如果有的话,我不想做一些艰难的事情一个简单的方法。
谢谢!