[英]Generating Class Diagram
我只是在我的项目发布结束时。为了继续工作,我们的经理要求我们为我们编写的代码生成类图。这是一个包含3500个java文件的中型项目。所以我认为我们需要生成类图。首先,我需要了解逆向工程如何在这里工作。 此外,我在谷歌寻找一些工具(绿色,紫罗兰),但不知道他们是否有任何帮助。请建议我如何继续。也是一个良好的开始教程是值得赞赏的。
我强烈推荐 BOUML 。 它的Java反向支持绝对是ROCK SOLID 。
BOUML还有许多其他优点:
您要使用的工具是Doxygen 。 它与Javadoc类似,但适用于多种语言。 如果计算出依赖关系,可以调用graphviz来渲染类图。 这是一个通过Doxygen运行的Java类的示例。
ObjectAid非常好。 您可以将类拖到图表中,并按照您想要的方式进行排列。
您可以使用开源模型工具ArgoUML http://argouml.tigris.org/逆向工程类图。
UML标准版(或更好)的Visual Paradigm将Java文件反向设计为类图。
我想如果你的老板只是想让你忙碌直到下一个项目开始,那么它就没有任何害处,但你很快就会发现创建一个包含3500个类的类图将会告诉你关于你系统的信息。 实际上,你真的不想要一个包含超过10个类的图表。 因此,一旦将所有代码转换为建模工具,您将需要开始组织和安排以找到含义。 创建一个新图表,将一个重要的类放到其上,并引入与该类直接相关的所有类。 重复可能是300个最重要的课程。 别担心,它并不像听起来那么可怕,也许是一个星期的工作。
为了记录,我选择的建模工具是Sparx Systems的 Enterprise Architect。 它将反转java源或.jar文件。 有30天免费试用版。
有一些工具可以帮助您生成这些图表。 这些花钱。
否则,您可以尝试解析Java文件。 这可以很简单,创建一个简单的解析器来读取Java文件并将类的名称和所有import语句写入文件并从那里生成类图, graphviz可以帮助你。
我已经使用Enterprise Architect多年了。 一位JBoss开发人员向我建议。 它适用于所有类型的UML建模,包括类模型的逆向工程(Java,C#和其他)。 基本版本目前每个座位120美元,但它具有更昂贵工具的大部分功能,而且更容易学习。 我特别喜欢它生成HTML和RTF文档的能力。
在工具和源代码之间同步代码非常容易。 如果你愿意,甚至双向。
您的PM也可能喜欢它可以创建的活动和序列图。 我还经常使用部署图。 将所有这些功能集中在一个工具中非常有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.