MDSF:特定领域建模 DSM(Domain Specific)介绍中提到过Ecore是EMF的元元模型,要使用Eclipse来做DSL,则必须先大致了解一下Ecore,本篇将对Ecore进行概要的描述。

简单的Ecore元模型子集

Ecore本身是一个简单的小的UML子集

EMF:Ecore模型_职场

  • EClass:领域类,它有名称,一个或多个属性,一个或多个引用
  • EAttribute:领域类的属性,属性有一个名称和类型
  • EReference:在领域类之间建立的关联,有一个名称,一个布尔值标识是否包含,还有一个引用指向的目标类
  • EDataType:属性类型,例如int或者对象类型

Ecore模型示例

  • 类图

EMF:Ecore模型_职场_02

  • 对应的Ecore模型 

EMF:Ecore模型_职场_03

Ecore模型类继承关系

EMF:Ecore模型_职场_04

  • EObject
    EMF的每个模型对象EObject都是Notifier,它维护了一个Adapter列表,可以把Adapter作为监听器加入到模型的这个列表中。org.eclipse.emf.common.notify.Adapter接口由EditPart实现。

Ecore structural features

EMF:Ecore模型_休闲_05

 

 

欢迎转载,转载请注明:转载自周金根 [ http://zhoujg.cnblogs.com/ ]