【问题标题】:C: Diagramming A Large Library [closed]C:绘制大型图书馆的图表[关闭]
【发布时间】:2010-10-17 20:10:05
【问题描述】:

是否有任何工具可以帮助绘制大型 C 库的图表?我正在开发一个将现有 C 库移植到 C++ 的项目。 C 库大部分没有文档,没有图表。我想使用 CASE 工具来帮助我了解各种文件如何交互。大多数文件中都有外部变量。

如果可能的话,我更喜欢可视化图表来更好地理解代码流。我不熟悉用于程序语言的图表工具(或者即使它存在)。我记得在大学里,我们使用层次结构和数据流程图来表示程序语言。

我知道存在许多用于绘制 OO 语言图表的工具,但我想要一个用于 C 语言的工具。任何帮助将不胜感激。

建议


doxygen

它可以从三个方面帮助您:

它可以生成一个在线 文档浏览器(HTML)和/或 离线参考手册(in ) 来自一组记录的源文件。 还支持生成 以 RTF (MS-Word)、PostScript、 超链接的 PDF、压缩的 HTML 和 Unix 手册页。文档是 直接从源头提取, 这使得它更容易保持 符合规定的文件 源代码。你可以配置 doxygen 从中提取代码结构 未记录的源文件。这是 快速找到您的方式非常有用 在大型源代码分发中。你可以 也可视化之间的关系 各种元素通过 包括依赖图,继承 图表和协作图, 这些都是自动生成的。 你甚至可以“滥用”doxygen 创建普通文档。


cppdepend

  • 开源/学术和商业许可证(MSVS 插件)

提高您的代码库质量。 CppDepend 是一个简化工具 管理复杂的 C\C++(原生、混合 和 COM)代码库。建筑师和 开发人员可以分析代码结构, 指定设计规则,做有效 代码审查和掌握进化 比较不同版本的 代码。这些案例研究表明 CppDepend 的实用程序有一个深 您的架构、设计和 执行。重构和改进 你的设计和架构。 CppDepend 提供有用的图表 分析您的设计和架构。 CQL 语言为您提供了灵活性 创建您的自定义查询并拥有 深入了解您的代码库。这里是 使用 CppDepend 辅助的示例 你的重构。协助您的 移民。了解现有 移民。 CppDepend 帮助您 迁移过程,你可以在这里找到 使用 CppDepend 的优点 您的迁移过程。


ctag

  • (nedit、vim、emacs)VIM TUTORIAL
    • 类名
    • 宏定义
    • 枚举名称
    • 枚举器
    • 函数定义
    • 函数原型/声明
    • 类、接口、结构和联合数据成员
    • 结构名称
    • 类型定义
    • 工会名称
    • 变量(定义和外部声明)

csope

  • (命令行,vim)VIM TUTORIAL
    • 允许搜索代码:
    • 对符号的所有引用
    • 全局定义
    • 函数调用的函数
    • 函数调用函数
    • 文本字符串
    • 正则表达式模式
    • 一个文件
    • 文件包括文件

【问题讨论】:

    标签: c diagram case diagramming


    【解决方案1】:

    Doxygen 可以生成各种类型的交互图——文件、函数调用等。通过设置 EXTRACT_ALL 配置变量,即使对于没有文档 cmets 的代码,它也会生成图和交叉引用的文档。

    【讨论】:

      【解决方案2】:

      CppDepend,如果您在 Windows 上工作,请使用查询语言和在依赖关系图中移动的能力扩展 Doxygen。

      【讨论】:

        【解决方案3】:

        Nick Meyer 提到的 Doxygen 可能是一个不错的选择。您还可以尝试经典的交叉引用工具 ctags 和 cscope,您可以将它们用作独立工具或与文本编辑器集成。

        【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-02-28
        • 1970-01-01
        • 1970-01-01
        • 2010-09-28
        • 1970-01-01
        • 2016-02-05
        相关资源
        最近更新 更多