2010-04-25 75 views
7

我发现自己阅读的代码比书写多10倍。我的IDE都经过优化,可以让我编辑代码 - 包括完成代码,代码辅助,概述等。但是,如果我正在检出一个全新的项目:进入应用程序的逻辑没有使用这些IDE功能进行优化。因为我不能延伸我不完全理解的东西。阅读代码 - 有用的可视化工具和浏览器工具

例如,如果您检查一个相对较新的项目frama-c,您会意识到它有插件可以帮助您深入了解“陌生的代码”:http://frama-c.com/plugins.html - 但是当然项目的范围不同。我完全知道的。

我正在寻找一些对代码阅读有帮助的事情。像:

  • 提供的曲线图, - 逆向工程UML例如,
  • 表示可变范围
  • 显示哪些部分通过尝试修改影响
  • 可视化数据流的语义
  • 表示标签。的大量使用功能
  • - 列出...

我的希望是那样的事情存在。 - 有一些我不知道的Eclipse插件,或者是有一些代码浏览器具有其中一些功能?

回答

1

Source Navigator是一个工具,看看。它有点老,但确实有调用图形可视化。

+0

呃...调用图形可视化并不完全是我正在寻找的。这比概述更具概要性。 – wishi 2010-04-25 18:51:28

0

您的问题中的第一个和第四个项目符号共同描述'调用图'。

当然,当你消化了大量由别人编写的代码时,这些都是理想的。

这里有一个implementation在C++中,它包括源代码和文档。有很多“调用图”(函数调用的图形显示)实现 - 我已经在Web上为各种语言找到它们(src + docs)。虽然滚动你自己并不困难。我所遇到的大多数(所有?)调用图脚本都基于graphviz,您可能知道这是一种使用非常容易学习的语法('点')表示图形的布局引擎。

我也见过graphviz用于与测试/诊断有关的其他目的;例如,Gprof2Dot是一个python脚本,可将profiler输出转换为点文件(然后可以通过graphviz将其呈现为图形)。

1

再加上graphviz,Doxygen在没有高级设计文档时可以创造奇迹。