我正在尝试将UML序列和类图添加到我的Java代码中,以便解释其内部和设计概念。我希望这些图表在JavaDoc块中指定,然后转换为附加到API HTML的PNG / GIF图像。
我可以使用什么工具来实现此过程的自动化(我正在使用Maven 3)?
答案 0 :(得分:5)
UML Diagrams within Javadocs: 本文展示了在Javadoc中包含UML图表是多么简单和简单,并且还可以使用源代码存储库中的每个更改来更新它们。
答案 1 :(得分:1)
我写了一个ant/maven plugin,它使用javadoc绘制动画/图像。
答案 2 :(得分:0)
我认为该模型应该更新,而不仅仅是图表转换为PNG / GIF等.... 生成自动图表没有实际价值。 例如,在一个自动生成的图表中显示一个巨大的类及其所有方法(例如有时超过100个)的兴趣是什么?您可能会得到巨大的图表并且不理解为什么这些代码已经编写并且无法理解架构等...您只是看到了代码的图形视图,这不是UML的目标!!
我在我的代码项目中所做的是使用以下功能:
show hide javadoc在我的UML类图中显示java doc
我也使用方法的反向来获得序列图。
我最欣赏的是能够在代码中实时导航,然后提取我的模型并仅在模型中导航。在给开发团队之前,我可以为我想要的任何模型进行建模并尝试新的体系结构。
我认为要包含在JavaDoc中的自动图表生成不是应该做的。如果您只手动花费5分钟,则可以使用所有更改来更新现有模型。您将能够创建自定义UML视图,您可以在其中添加注释。拥有视图将为团队提供更好的信息,同时节省时间并为代码增加质量。
您可以为每个开发人员提供一个UML查看器,并为您的JavaDoc提供一个链接。开发人员只需要点击链接即可打开将自动更新的图表。没有更痛苦的图像导出,错误的更新,因为一旦创建了图像,就不可能改变它。你仍然可以创建新的图像,但你放弃了你的评论,演示文稿等......并且只获得一个静态的巨大图表,包括所有方法,属性等......无法检测高级关联和依赖关系。只有遗传检测是正确的!!
您的UML模型可以与maven和SVN一起使用,真正为您的项目和建模带来真正的价值,这是图像导出无法实现的。在我看来,你试图使用UML图只是为了向你的项目添加UML,但添加一个严重反向项目的图像导出而没有视图,注释等......不是UML而且在Java项目中没有价值