什么是AndroMDA?(翻译稿v1.0)

版权声明:

原文摘自:http://www.andromda.org/index.php?option=com_content&task=blogcategory&id=0&Itemid=42

本译文为“123行动”网站(http://www.123go.org.cn )版权所有,以<a href="http://creativecommons.org/licenses/by/2.0/">Creative Commons License</a>方式授权。欢迎转载,但请注明译文原始出处(http://www.123go.org.cn/disDiaryContentAction.do?searchDiaryID=1778&goalID=1778&naviStr=a10 )

另外,由于译者水平相当有限,错漏之处敬请指正,联系信箱:mdx-xx@tom.com,或在上述译文原始出处回复。 最新译文也会在

上述译文原始出处随时更新。

×××××××××××××××××××××××××××××××××××××××××××××××××××××××

什么是AndroMDA?

  AndroMDA(发音:Andromeda)是一个依附于模型驱动架构范例(MDA)的可扩展的生成器框架。来自UML工具的模型能被转换成你喜欢的平台(J2EE, Spring, .NET)的可布署的组件。不像其它MDA工具包,AndroMDA带来许多已经做好的盒子,这些盒子征对现在的Axis, jBPM, Struts, JSF, Spring 和 Hibernate之类的开发工具包。AndroMDA也包含一个工具包来制造你自己的盒子或定制元盒子(已经存在的东西)。使用它,你可以用你喜欢的UML工具制造一个定制的代码生成器。

核心特性

AndroMDA当前带来下列特性:

模块设计:AndroMDA所有主要的构成块是可插接的,可以被改变来满足你的需要

支持主要的UML工具,像:MagicDraw, Poseidon, Enterprise Architect 和其它的UML工具

带来完全的UML1.4元模型(当前正在开发对UML2.0的支持)-你也有另外的选择,你可以带来你自己的元模型在MOF XMI里,并从基于它的模型产生代码

使用联系到元模型类的OCL 限制来验证输入的模型。预先配置的限制也保护你不犯大多数普通的建模错误,即添加你自己项目专用的限制

模型到模型的转换帮助你提高抽象水平,现在在java里你可以写你自己的转换,在AndroMDA的下一个主版本里,你也可以在其它的转换语言里写这种转换,例如在 QVT里-一种像 Atlas Transformation Language (ATL)的转换语言

能够使用模版产生任何种类的文本输出(像:源代码,数据库脚本,网页,O/R映射配置文件等等)-你教AndroMDA,它就能做!

模版是基于著名的模版引擎。  现在支持Velocity 和 FreeMarker

现存可用的征对普通企业架构(EJB, Spring, Hibernate, Struts, JSF, Axis, jBPM)的盒子

来自世界各地的队伍成员的全天候的支持:测量在forum.andromda.org的问题响应时间你会非常吃惊!论坛已经包含超过10,000篇文章。

 

盒子

  非常像Eclipse,AndroMDA以插件架构为特色。AndroMDA本身基本上是一个转换引擎。为了支持任意的目标架构,你可以插入定制的转换。这些转换被打包成所谓的盒子。

  

  AndroMDA 带来许多现存可用的盒子,比如:

Spring

EJB 2 / 3

Webservices

Hibernate

Struts

JSF

Java

XSD

 你也可以写你自己的盒子来支持你自己的架构或框架。AndroMDA能够为任何你能够想像得到的架构和计算机语言产生输出。写作盒子的课程可以在AndroMDA.com上找到。  

                                             -littlebat

                                                                              2006.3.15