快捷搜索:  as  test  1111  test aNd 8=8  test++aNd+8=8  as++aNd+8=8  as aNd 8=8

银河娱乐app手机下载:EMF介绍系列(一、EMF与MDA)



打仗Eclipse一段光阴的同伙应该都据说过EMF这个名字,EMF是Eclipse Modeling Framework的缩写,它是Eclipse的一个紧张的子项目,假如翻译成中文便是“Eclipse建模框架”。着银河娱乐app手机下载实只从这个名字还真是难以确定它的感化是什么,我觉得要完全掌握EMF应该对模型驱动开拓(MDA)有必然的懂得,而EMF可以看作是Eclipse上的MDA一个实现(代码天生是MDA 的紧张组成部分之一),它能够天生在Eclipse上履行的代码。可惜我对MDA没有系统钻研过,对EMF的利用大年夜多是为了削减模型改动带来的影响,以是也盼望EMF能带我进入MDA的天下。

MDA考究的是把模型和利用系统实现分开银河娱乐app手机下载,模型是最紧张的部分,可以说有了清楚的模银河娱乐app手机下载型,就完成了一半的事情。模型是由元模型(Meta Model)定义的,例如UML里“类”和“属性”这些观点是在UML的元模型里定义的,而元模型又是由“元元模型”来定义,后者多是自描述的,也便是能够自己定义自己,以是很少见到“元元元模型”的观点。在MOF规范里,元元模型处于M3层,元模型处于M2层,往下的M1层是模型,而M0层是实例。EMF定银河娱乐app手机下载义了一套Ecore元模型,该模型是EMOF(MOF的一个子集, MOF是Meta-Object Facility的缩写)的一个实现,这是一个自描述的模型,可以觉得它处于MOF中的M2层,即与UML元模型相同的位置。用Ecore元模型可以定义 ecore模型,也便是.ecore文件,这个模型处于M1层,而ecore模型的实例处于M0层。关于MOF的更多观点请参考MOF规范和相关文档, MDA的各类观点是相称多的,钻研它的人也很多,我觉得EMF算是对照务实的一派。假如今后有时机深入钻研Ecore元模型,我也会把心得写在这里供大年夜家参考。

EMF自宣布以来不停受到Eclipse社区的热心拥护,今朝很多Eclipse的子项目都是基于它开拓的,可见EMF确凿能给开拓者带来好处。跟着EMF的生长,呈现了越来越多的文档,在eclipse.org/emf上就可以找到不少,最周全和势力巨子确当属这本Eclipse Modeling Framework A Developers Guide,完备的解说了EMF银河娱乐app手机下载,虽然针对的版本较早,但绝大年夜部分内容照样适用的;作为入门读物,网站上Documents里列出的一些教程也是不错的选择;EMF的新闻组更是一个很好的交流场所,Ed Merks(EMF设计师之一)和其它几位开拓职员可以说是有问必答,谢谢他们的卖力立场。

经由过程在一些项目里应用EMF,我也徐徐感到了到它起到的感化,分外是当模型里各类元素和关系对照多时,EMF的代码天生功能会节省不少事情量,对付我们开拓职员来讲,这不便是最大年夜的好处吗。其实用EMF构造一个利用的步骤很简单:1、构造模型,2、天生代码,前者可以经由过程UML类图、Java接口、 XML Schema等多种要领定义,后者可以选择只天生模型部分的代码,也可以同时天生编辑器部分的代码,对这个编辑器做一些定制就可以获得相符需求的利用法度榜样。

类图可以赞助我们直不雅的懂得利用系统里各工具的关系,但在开拓历程中,类图里的定义很可能被改动,假如这一改动没有及时反应回类图,类图就会徐徐变得不准确而掉去感化。然则维持代码和类图的同等是一件很啰嗦的事情,无意偶尔因为项目治理的必要,类图又必须包管能够反应系统的真实布局。对照好的办理措施是让代码由类图直接天生,模型必要改动时也在类图上做篡改,并且从新天生代码,这恰是EMF的专长。

说了这么多,你可能照样没弄明白EMF到底能为我们带来哪些好处,是如作甚我们节省事情量的,从下个帖子开始我们将一步步懂得如何应用EMF构造利用法度榜样。由于是边用边写,以是这个系列的帖子都不会太长,信托后面部分会以心得和技术等内容为主。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

您可能还会对下面的文章感兴趣: