【问题标题】:MDA : Model Driven Architecture [closed]MDA:模型驱动架构
【发布时间】:2010-12-18 20:00:38
【问题描述】:

需要一个想法来开发非常简单的应用程序来展示 MDA 的概念。

【问题讨论】:

  • “你好,世界!”怎么样? :) 这个问题其实很模糊..
  • @Vincenzo,很简单。我想研究 MDA 应用于现实世界解决方案的好处,它的优缺点。
  • MDA 可以应用于任何应用程序,无论它多么简单/复杂。您设计的应用程序越复杂,您对 MDA 的演示效果就越差。
  • 我同意,我只是想评估一下。让我迈出第一步!
  • 如果您想研究 MDA 的好处,请阅读一本书,如果您觉得值得,然后将其应用到您的下一个项目中。 MDA 是一种人为的方法,仅仅靠自己破解它并没有多大帮助。边读边学,边读边学。

标签: java model eclipse-emf mda metamodel


【解决方案1】:

好吧,在 MDA 世界中很难找到类似于 hello world 的东西,因为 MDA 旨在解决更大的问题。我认为开始的最佳方法是通过“在元模型中思考”来解决以下问题

在任何现实世界的应用程序中,您都需要某些工件来持久化任何业务实体。选择 2 个这样的简单实体,如 Customer 和 Orders,并在任何多层应用程序的所有层(如 ui、持久性等)中生成所有相应的工件。以下是帮助您入门的工件

  1. UI(jsf 表单,托管 bean, faces-congig.xml) 供用户使用 为两个实体输入数据
  2. 提供以后的工件,例如 交易分界码等
  3. 持久层工件,例如 (DAO/存储库,JPA/Hibernate 映射文件)

现在,在此过程中,您还将发现还有更多需要建模的东西,例如 faces-config、jpa/hibernate config 等。

EMF 是更流行的元建模工具包,oAW 是您的生成/转换引擎。 This tutorial 可以帮助您入门。

Spring RooOpenXava 在我看来是两个众所周知的支持 MDA 的框架

准备好在元模型、元元模型、模型实例等 MDA 术语中放松自己......

【讨论】:

    【解决方案2】:

    我同意前面的回答, 我只想添加更多信息。 在我看来,Eclipse 建模框架是实现 OMG 架构和语言的最佳框架之一。我建议您使用 TopCased 进行建模 (http://www.topcased.org),它基于 EMF,并为您提供了一个用于 UML/SYSML 建模的良好 IDE。因此,您可能希望从您的模型中自动生成一些代码。为此,我强烈建议您使用 Acceleo,它是 MOF 模型 2 文本转换语言和相关引擎的 EMF 兼容实现。

    【讨论】:

      【解决方案3】:

      好吧,“hello world”:创建类“World”并在其上定义操作“hello”。如果这还不够,您可以随意扩展“世界”。

      【讨论】:

        相关资源