首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

EMF 介紹系列(一):EMF 與 MDA 核心概念解析

     編輯:Java 相關知識

什麼是 EMF?

EMF(Eclipse Modeling Framework)是 Eclipse 重要子專案,中文譯「Eclipse 建模框架」。它是 MDA(Model-Driven Architecture,模型驅動架構)在 Eclipse 平台上的實現之一,核心能力是**代碼生成**。

MDA 分層與 EMF 定位

MOF 規範定義四層架構:

  • M3(Meta-meta Model):元元模型,自描述。
  • M2(Meta Model):元模型,如 UML 元模型定義「類」、「屬性」。
  • M1(Model):模型,如具體的類圖(.ecore 檔)。
  • M0(Instance):實例,模型的具體物件。

EMF 定義 Ecore 元模型,屬於 M2 層,是 EMOF(MOF 子集)的一個實現,且自描述。用 Ecore 定義出的 .ecore 模型屬 M1,其實例屬 M0。

為什麼選擇 EMF?

  • 模型與實現分離:模型是核心資產,代碼可由模型生成。
  • 同步維護:模型修改後重新生成代碼,避免類圖與代碼脫節。
  • 社群成熟:眾多 Eclipse 子專案基於 EMF,文檔豐富,Eclipse Modeling Framework: A Developer's Guide 為權威參考。

EMF 應用基本步驟

  1. 建構模型:支援 UML 類圖、Java 介面、XML Schema 等多種方式。
  2. 生成代碼:可僅生成模型代碼,或連同編輯器代碼一併生成,再定制得生產級應用。

系列規劃

後續文章將逐步實作:從模型生成應用、定制介面、進階建模(枚舉、自訂類型、Map)、命令框架、.Edit 元件等,帶你掌握 EMF 核心開發技巧。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved