使用Eclipse建模框架开发应用程序

使用Eclipse建模框架开发应用程序,eclipse,mda,emf,Eclipse,Mda,Emf,我正在寻找可用的MDA(模型驱动架构)工具。我从EMF(Eclipse建模框架)开始 生成核心类看起来不错 生成一个端到端应用程序有什么帮助 To generate UI elements (JSP/JSF/so on...) To generate Entities and ORM's To generate EJB's/Web Services EMF中是否提供了广泛的建模来实现这些要求 或者可以使用任何其他工具来捕获建模中的端到端应用程序并将其用于开发?Eclipse建模框架为您提供了

我正在寻找可用的MDA(模型驱动架构)工具。我从EMF(Eclipse建模框架)开始

生成核心类看起来不错

生成一个端到端应用程序有什么帮助

To generate UI elements (JSP/JSF/so on...)
To generate Entities and ORM's
To generate EJB's/Web Services 
EMF中是否提供了广泛的建模来实现这些要求


或者可以使用任何其他工具来捕获建模中的端到端应用程序并将其用于开发?

Eclipse建模框架为您提供了MOF语言的实现(http://www.omg.org/spec/MOF)叫ECORE。通过充当元模型的ECORE,定义了建模语言的元模型(即UML元模型等)。您可以通过基于EMF的纸草或TopCased编辑UML图。当您定义这样的图时,您还创建了一个模型文件,其中XMI内容符合相关的ECORE元模型。 现在,多亏了它,您可以通过一个名为ACCELEO的Eclipse插件将模型应用于文本转换,ACCELEO是OMG标准MOFM2T转换语言的一个实现(http://www.omg.org/spec/MOFM2T)

所以,您可以定义自己的领域特定建模语言(通过ECORE),将UIElement(Jsp、Jsf等)DBEntity等概念作为第一类实体,创建符合该概念的模型,并创建模型到文本转换(ACCELEO),将其转换为可执行代码


您可以定义(或重用已经存在的)UML概要文件,通过该概要文件,您可以标记UML模型的元素,以表示UI元素、DB实体等,并创建模型到文本的转换,将它们转换为可执行代码。实现这一点的最佳技术是M2T-JET。它是一个非常轻量级的模板框架,不会强迫您使用任何一个模型。使用JET,您可以生成整个多项目应用程序


这里有一个链接,指向我对另一个JET问题的回答,在这个问题中我给出了一个

,因此,如果我在ECORE中定义了我的所有元模型规范,要从中创建实例模型,我可以使用元模型作为插件依赖项。在我的实例模型项目中,我需要使用MTT(ACCELEO)来生成代码。我说的对吗?不,你可以用很多不同的方法来进行。最简单的方法可能是使用带有原型(由您在概要文件中定义)的UML类,或者添加您需要的特定信息。因此,您可以将该模型作为输入提供给您可以通过ACCELEO定义的m2t转换,以便从输入模型自动生成代码。更复杂且不一定更正确的方法是通过ECORE定义您自己的DSML,生成编辑器,创建模型并应用m2t转换。请注意,只有ECORE是元模型,而UML是元模型,您自己的UML模型是UML元模型的模型实例。谢谢Chris。,使用JET我可以定义类似JSP的模板,对吗?是否提供建模来定义UI到服务之间的映射,比如哪个按钮将调用哪个服务,哪个字段值对应哪个服务参数等等?对于建模,我一直强烈建议您将两个模型分开:一个模型用于模板并针对模板进行了优化,另一个模型用于捕获您的设计、实现等等。将它们分开,因为它们做两件截然不同的事情。只有在定义了模型和模型到文本的转换之后,才应该考虑编写第二个转换,从上游模型到模板的模型。通过遵循这一转换顺序,您将使事情变得更加简单。但是,为了回答您的具体问题,您可以选择您的建模环境和工具,而无需担心模型到文本转换将如何使用该模型。我需要保留我的模板模型(我的用户模型的元模型/语法)和用户模型(我的需求的设计模型)是分开的,这就是你的建议,克里斯,我明白你的观点吗?