本文主要对截至2012年5月的UML相关工具进行了详细的比较和概述。UML (统一建模语言) 是一种标准化的建模方法,用于可视化软件系统的不同方面,如类图、序列图等。在列举的工具中,包括了以下几个特点:
1. **Acceleo 3.0** - 由法国的供应商提供,它是一款开源工具,支持多种编程环境如.NET、JEE、PHP、Python和Java。与Eclipse和EMF(模型驱动架构框架)紧密集成,特别适合于敏捷开发。它的特点是能从Java代码自动生成UML类图。
2. **AgileJ** - 是一款收费的Eclipse插件,同样支持Java,主要用于从Java代码生成UML类图,强调自动化和生产力提升。
3. **Amateras UML 1.3.2** - 来自日本,是开源工具,专长于生成UML类图,尤其是通过代码分析自动生成序列图,具有强大的分析功能。
4. **AndyUML** - 这是一个免费的Android应用,提供了Yuml.me服务的客户端,用户可以在移动设备上快速绘制UML图。
5. **AndroMDA 3.4** - 是一个开源工具,适用于J2EE/EJB、Spring、Hibernate等技术栈,支持UML2和基于EMF的工具,如MagicDraw和RSM,功能全面且兼容多种平台。
6. **Apollo for Eclipse 2.0** - 由Gentleware AG提供,作为Eclipse的扩展,提供30天试用期,专注于Java开发,支持双向工程,帮助开发者理解和管理代码。
7. **Architexa 2.0** - 又一款Eclipse下的UML工具,注重用户体验和代码理解,同样提供30天试用,适用于专业级软件建模。
8. **ArgoUML v0.34** - 被推荐的开源工具,由Tigris.org维护,支持Java和C#,不仅限于图形表示,还支持OCL(对象约束语言)和认知式开发,注重深度的模型理解和开发过程。
这些工具各有侧重,用户可以根据项目需求、团队技术栈和个人偏好来选择合适的UML工具。随着时间的推移,市场上可能还有更多新的工具涌现,但这些早期的工具已经为开发者们提供了广泛的选择。在选择时,要考虑工具的成熟度、社区支持、兼容性以及与现有技术栈的集成程度等因素。