【问题标题】:Generate full class diagram using GraphViz and Doxygen使用 GraphViz 和 Doxygen 生成完整的类图
【发布时间】:2015-12-10 02:59:34
【问题描述】:

我目前正在实习,为了公司,我决定继续进行编程工作。对于我目前的实习来说,这似乎比创建没有人得到或使用的各种图表更合适。

现在我遇到了一个问题。 4 周的实习和 50 节 Java 课程之后,我的学校决定他们想看一张班级图。我已经用 GraphViz 设置了 doxygen 来生成部分类图,只关注其中一个类及其关联。但我想知道的是,是否可以生成一个包含所有类的所有关系的类图?还是我必须尝试让我的学校相信这样类图具有更好的可读性?

【问题讨论】:

    标签: doxygen graphviz class-diagram


    【解决方案1】:

    简短的回答是这是不可能的。 Doxygen 解析代码并仅包含图表中与文档类有任何直接或间接关系的类。 doxygen 不会生成包含所有类及其关联的通用类图。

    使用 doxygen 的图表选项来查看图表是否对您有意义(使用“doxywizard”[向导选项卡 -> 图表或专家选项卡 -> 点],或者我更喜欢直接编辑 doxyfile)。

    我不认为具有 50 多个类的类图是有意义的,因为这会导致图难以阅读,这比帮助更令人困惑。 (通常最好将代码组织在包中,您可以使用 doxygen 的分组功能记录这些代码。在这种情况下,您可以使用协作图来显示包之间更高级的关系。)

    另一种方法可能是使用 UML/CASE 工具从您的代码生成 UML 图(例如,来自 Sparx Systems 的 Enterprise Architect,您可以导入您的代码并让该工具从中生成类图)。您可以通过将这些图形导出为图片并使用 \image 标签将这些图片包含在您的 doxygen 生成的文档中来包含此类生成的图形。

    我希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 2012-03-18
      • 2013-07-29
      • 2015-09-15
      • 2012-12-15
      • 2020-04-14
      • 1970-01-01
      • 2014-08-02
      • 2012-02-05
      • 2021-01-20
      相关资源
      最近更新 更多