EMF学习系列之:初识EMF

以前看过GEF,这个东西不错,功能很强。作出来的东西也很专业。可使用GEF最大的问题就是建模和处理事件监听问题。

 

通常GEF模型中的监听功能主要是通过PropertyChangeListener来实现的。好多东西得自己写。有了EMF就好多了,EMF中所有由模型生成的类都继承自EObject,而EObject又实现了Notiffer类。这个"Notiffier"类就是实现监听机制的关键。本身因为是在模型声成的时候就实现了这个类,所以使用起来非常的方便,可以极大的简化改进我们的开发过程。在这个文章中我们来一步一步的学习一下EMF,分析一下用EMF生成的代码以帮助理解一下EMF框架。

 

我的开发平台是Eclipse 3.4.2,哪个版本不重要,只要里头安装好了EMF就行了。

 

首先我们来创建一个新的"Empty EMF project".

New EMF Project

创建好项目后,再在项目中创建一个新的Ecore Model:book.ecore

New Ecore Model

创建好book.ecore文件后可以在项目文件目录中看见我们的“book.ecore”模型文件。然后在我们的.ecore文件上右击选择“Initialize ecore_diagram diagram file”这个选项。这一步的作用就是通过这个步骤建立起来的"book.ecore_diagram"来实现EMF的可视化编辑。

Ecore Diagram

 

创建好这个ecore_diagram文件后我们来打开它应该就能看见可视化设计界面了。如果没出错误,你的结果应该和我的差不多。

Ecore Visual Designer

在这里需要注意一下的是现在网上好多的EMF教程其实都是几年前写的,现在版本早就升级了,所以这个界面和教程里所描述的内容上有一定的差不别。主要是:Association和Aggregation这两个类关系连接上。在下面的章节中我会单独拿它出来作一下讲解。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值