Eclipse插件开发:EMF与GEF框架实战

需积分: 10 5 下载量 161 浏览量 更新于2024-07-26 1 收藏 3.95MB PDF 举报
"本书深入介绍了如何在Eclipse插件开发中应用EMF(Eclipse Modeling Framework)和GEF(Graphical Editing Framework)。通过一系列代码示例,作者Bill Moore、David Dean、Anna Gerber、Gunnar Wagenknecht和Philippe Vanderheyden详细讲解了这两个框架的理解与开发技巧,适用于Eclipse平台2.1.1版,EMF 1.1.0版和GEF 2.1.1版,支持Microsoft Windows环境。" EMF和GEF是Eclipse平台中用于构建图形化建模和编辑工具的关键框架。EMF提供了一种强大的方式来定义和实现模型,而GEF则专注于创建用户友好的图形界面。 **Eclipse Modeling Framework (EMF)** 是一个基于OMG的MOF(Meta-Object Facility)标准的开源框架,它允许开发者创建、存储和操作数据模型。EMF提供了一套完整的工具集,包括: 1. **模型定义语言**: 通过ECORE,一种元模型表示语言,开发者可以定义数据模型,这些模型可以映射到XML Schema或其他形式的数据。 2. **代码生成**: 自动从模型生成Java类和XML序列化代码,使模型对象可以直接在代码中使用。 3. **序列化和反序列化**: 支持将模型数据转换为XML,便于持久化和交换。 4. **API**: 提供了丰富的API,用于操作模型实例,进行添加、删除、修改等操作。 **Graphical Editing Framework (GEF)** 则是一个用于构建图形编辑器的框架,它建立在EMF之上,为创建图形用户界面提供了基础。GEF包含以下核心组件: 1. **Part**: 表示图形编辑器中的一个可视元素,如画布或工具栏。 2. **EditPart**: 将Part与模型关联,处理绘图和用户交互。 3. **Command**: 定义可撤销/重做的操作,确保编辑操作的正确性。 4. **Viewer**: 显示和管理EditParts,提供布局和导航功能。 5. **Figure**: 负责图形的绘制,是GUI的视觉元素。 结合EMF和GEF,开发者可以快速构建出具有图形界面的模型驱动应用,如数据库建模工具、UML编辑器等。书中提供的代码示例将帮助读者更好地理解如何在实际项目中应用这两个框架,包括: - 如何定义和使用EMF模型 - 如何创建GEF编辑器并处理用户交互 - 如何实现命令模式以支持可撤销/重做操作 - 如何自定义布局和绘图逻辑 - 如何与其他Eclipse插件集成 《Eclipse Development using the Graphical Editing Framework and the Eclipse Modeling Framework》是学习如何利用EMF和GEF在Eclipse环境中开发图形化应用的宝贵资源,适合Eclipse插件开发者、建模工具开发者以及对模型驱动开发感兴趣的技术人员阅读。通过这本书,读者将能够掌握这两个框架的核心概念,从而提高开发效率和软件质量。