Eclipse建模框架和Eclipse图形编辑框架的用途是什么



也许这个问题很简单,但它让我对它们的目的有点困惑。

只是探索Eclipse建模框架和Eclipse图形编辑框架。基本上,图形编辑框架(GEF)提供了一个创建可视化编辑器的框架。Eclipse建模框架(EMF)是一个Java框架和代码生成工具,用于构建基于结构化模型的工具和其他应用程序。

在这里,我对这两个框架的确切用途和目的有点困惑。在开发任何类型的UI时,我是否需要同时探索这两个框架?

从实用的角度来看:

  • 您引用的EMF网站上的介绍性文字有点误导IMHO。基本上,EMF允许您创建(数据)模型,而不是(直接)创建工具/应用程序。例如,我正在开发一个包含GEF编辑器的EclipseRCP应用程序,该编辑器基于EMF创建(生成,然后自定义)的数据模型。

  • GEF允许您创建图形编辑器。就是这样。GEF的编辑可以处理不同类型的模型,其中包括EMF模型。看看GEF的书,他们在书中使用了一个简单的Java模型作为示例应用程序。在GEF中,您必须手动对编辑器进行编码。

  • 为了完成首字母缩写bingo,有GMF,它可以让您从EMF模型生成图形编辑器(而不是GEF,在GEF中您必须步行)。GMF可以被称为EMF(模型)和GEF(图形编辑器)之间缺失的一环,但它并不容易上手。GMF的一个替代方案是Graphiti,它提供了一个Java API,用于轻松开发基于EMF模型的图形编辑器。

在回答你的评论时:你不能和全球环境基金一起开发一个模型,你必须使用EMF。GEF建立在模型之上(不仅仅是EMF模型)。它提供了MVC中的V(视图)*和C(控制器),EMF可以用来提供M(模型)。

*超出范围:GEF也使用Draw2D绘制数字。

最新更新