EMF 是 Eclipse 建模框架,它是 Eclipse MDA(Model Driven Architecture)的重要组成部分,其 元模型 ECore 是 MOF 的 Java 实现,根据 Java 语言特性对 MOF 适当简化并增加 Java 特性。EMF 主 要提供了元模型的创建,利用模型生成 java 代码,并且提供了一个基本的模型文件编辑环境。通过 EMF 可以自动生成模型的编辑视图。但 EMF 的默认编辑视图功能简单,用户界面不够灵活,难以满足大型业 务系统要求。Topcased 是一个开源的用于开发过程的建模工具。Topcased 构建于 Eclipse 平台之上, 并借助 EMF 和 GMF 技术,提供了元模型的定义,图形化编辑,代码生成等功能。它对 EMF 原有功能进 行扩充,提供了扩展的模型属性编辑视图,不但功能灵活,而且界面更加友好,给为项目开发提供带来极 大的便利。本文以一个图书管理系统演示 Topcased 的使用。
简介
EMF 全称 Eclipse Modeling Framework.,是 Eclipse 建模框架。它是 Eclipse MDA(Model Driven Architecture)的一个重要组成部分,其元模型 ECore 是 MOF 的 Java 实现,根据 Java 语言特性对 MOF 适当简化并增加 Java 特性。EMF 主要提供了元模型的创建,利用模型生成 java 代码,并且提供了 一个基本的模型文件编辑环境。下图是一个典型 EMF 提供的模型文件编辑环境。
图 1. 模型文件编辑环境
从上图可以看到 EMF 虽然能够提供建模的能力,但是生成的编辑视图很简单,直接使用有时无法完全 满足项目要求。特别是在企业级的应用项目开发过程当中,属性往往需要进行分类或分组,而不是简单罗 列。在不同阶段或时机,对模型对象属性进行填充。通过属性分组,有利于开发过程当中需求分析人员、 概要设计人员、编码人员的分工协作。我们知道 GMF 虽然提供了建立复杂建模视图的能力,但是实现复 杂,在建模中成本过高,所以需要一种既可扩充 EMF 的模型视图编辑能力,又要简单方便的技术解决方 案。Topcased 开源项目很好的扩展了 EMF 模型文件编辑视图,加强了模型文件的编辑能力。
Topcased 是 Airbus(空客)公司提出的开源项目,主要针对航空领域提供了一套开发软件工具包。 Topcased 构建于 Eclipse3.4 RCP 平台之上,并借助 EMF 和 GMF 技术,提供了元模型的定义,图形化 编辑,代码生成等功能。它对 EMF 原有功能进行扩充,提供了扩展的模型属性编辑视图,不但功能灵活 ,而且界面更加友好,给为大型项目开发提供带来极大的便利。