3

我需要一个工具来从 java 源代码生成控制流图。有这样的工具吗?如果我有控制流图,是否也可以生成源代码?

4

2 回答 2

1

Sparx Systems 的 EA 有一个工具可以连接到调试器并生成 UML 序列图:

来自 Sparx 营销策略:

Enterprise Architect 中内置的调试器专门设计用于使开发人员或测试人员能够在“遍历”执行代码时捕获堆栈跟踪信息,对挂起的线程执行运行时检查。然后,他们可以使用最终的堆栈跟踪历史记录在 Enterprise Architect 中生成序列图,将实际的代码执行和调用转换为可视化图表。

我很确定这只是一种单向转换 - 没有往返。

于 2009-10-09T06:23:30.710 回答
1

请参阅我公司的(语义设计)Java 前端。它将计算源代码中方法的控制流图。

Java 前端构建在DMS Software Reengineering Toolkit之上,它提供了用于操作(解析、分析 [例如,提取控制流图])、转换和生成)代码的通用机制。

如果一个人有一个特定的控制流图,DMS 提供了一种机制来使您能够构建一个图形遍历器,并且您可以从中合理地构建 Java AST,然后可以将其用于生成 Java 源代码。显然,您的控制流图必须使用能够轻松转换为 Java 概念的词汇(例如,没有 Prolog“统一这个”运算符),否则您将很难生成相应的 Java 代码。如果您从 Java 代码生成图表,情况显然会如此。

于 2011-04-02T10:18:44.557 回答