我可以在C ++中使用逆向工程师在Enterprise Architect中导入doxygen标签吗?

问题描述 投票:1回答:1

我们目前正在评估Enterprise Architect(12,候选版本)。

我们想要使用它的主要原因是使用逆向工程功能,从c ++到UML。

我们的代码库使用Doxygen标记进行记录。

现在,EA的解析器似乎无法识别这些标签。有没有办法可以启用它?

编辑:我正在寻找的东西不是插入UML中,而是添加到项目模型中。例如,由方法的@param标签定义的信息被插入方法的“注释”中而不是参数的“注释”中。生成模型等时不考虑@author doxygen标签。

c++ doxygen enterprise-architect
1个回答
1
投票

可能无法使用解析器的一些简单的开箱即用定制。

我正在解决导入自定义元数据的类似问题(负责该类的开发人员,相应的数据库表或视图映射实体,部署包(.dll)和体系结构层,人性化的类描述,对规范文档的引用等)。并以非正式笔记和正式标记值的形式在Enterprise Architect中提供它们。

在尝试生成这个元数据信息作为doxygen风格的评论之后,我放弃了,因为doxygen评论解析器似乎不可自定义,为了使非ascii字符正确导入,源代码文件必须包含UTF-8 BOM序言,这不是第三方传统的工具友好编码。

我决定采用XMI filetags XML元素中的所有元数据来生成documentation

在我解决组合和聚合关系的正确XMI编码之前,项目在所有类和属性和关联以及所有元模型属性(作为注释和标记值)位于C#XMI特定的600行以下的阶段停止代码,我们在EA中有几千个类可供分析师使用。

在您的情况下,您可以以类似的方式解决需求:

  1. 使用逆向工程将C ++代码库导入Enterprise Architect
  2. 使用doxygen的GENERATE_XML功能等工具提取doxygen注释元数据
  3. 以往返友好的XMI格式导出Enterprise Architect模型
  4. 编写一个单一用途的工具,它将采用XMI模型,您的注释元数据并吐出用您的专有信息注释的新XMI模型
  5. 完成导入XMI模型。

对于步骤3 ... 5,可能有一种更简单的方法,因为Enterprise Architect具有Scripting and Automation接口,允许使用Visual BasicC#等语言读取/修改模型

© www.soinside.com 2019 - 2024. All rights reserved.