我需要一个C#的分析工具

时间:2011-05-26 19:12:26

标签: c# legacy-code

我在C#中有一个很大的遗留代码。

我需要对其进行分析,以便推荐在程序中构建一些新功能的最佳方法。

是否有任何工具可以实现快速分析,并且能够以清晰的方式显示类关联,这有助于我尽快进入这个旧逻辑?

任何有关如何做到最好的经验故事或建议都将受到赞赏。

谢谢!

6 个答案:

答案 0 :(得分:5)

static analysis tools可以为这样的代码库提供帮助。

Visual Studio 2010 architecture edition附带了类图设计器,并将为您生成类图和依赖项(架构 - >生成依赖关系图 - >类图)。

还有广告nDepend

答案 1 :(得分:2)

我强烈建议您查看Visual Studio 2010 Architecture ExplorerDependency Graphs,它们为您提供了分析旧代码的强大功能。

答案 2 :(得分:2)

我建议您使用NDepend

查看this list,其中包括每个工具的简短说明。

答案 3 :(得分:1)

要完成O.D答案,NDepend是一个专门用于分析和掌握大型.NET代码库(传统与否)的工具。

该工具提出了快速分析,依赖图和依赖矩阵,代码比较,代码规则设施,VS完全集成和more features。您现在可以在代码上试用它,因为我们建议使用免费的Trial version

由于您似乎对探索类关联等依赖关系感兴趣,here是从依赖关系图开始的介绍。 class associations dependency graph

Here是从依赖矩阵开始的介绍(比图更适合探索大块代码中的依赖关系)。 assembly associations dependency matrix

答案 4 :(得分:0)

恕我直言,你可以得到的最好的是Resharper - 使用类型层次,价值追踪和呼叫追踪的组合是导航旧战舰遗留代码库并掌握它的最佳方式。

答案 5 :(得分:0)

尝试通过Code Perspective运行它 - 它提供应用程序的实时可视化。我发现它帮助了解了我的大型遗留代码库是如何工作的。

https://codeperspective.com/