Eclipse Modeling Course

Eclipse Modeling Course description

  • This Eclipse Modeling course will enable you to gain the necessary knowledge to design applications
  • It covers the Ecore design language and all the tools using this language

Course Objectives

  • Learning how to model with EMF / Ecore
  • Generating and managing the EMF generated code
  • Generating specific code with Xtend or Acceleo
  • Using Xtext to produce a text editor for the model
  • Creating a graphical model editor (GEF and GMF)

Target Audience

  • Developers
  • Project managers
  • Software architects


  • Modeling concepts
  • Knowledge of Java/Eclipse

icon-pdf-48 Download the course plan


3 days

Upcoming Eclipse Modeling courses

OPCoach currently organizes this course on-demand, at your company’s offices and over 3 days, in English.

Some courses are organized also in french (see the french page)

Request information

OPCoach's strengths

  • Eclipse Expert since 2004, I offer you a complete training program, using the latest versions and putting emphasis on numerous practical exercises
  • By attending every international Eclipse conference (Germany, USA), I am able to teach you a pragmatic and practical approach on these technologies
  • OPCoach is also member of the Eclipse foundation as a  Solution Member and committer on several projects : E4 toolseclipse.platform and eclipse.pde.
  • Since 2009, OPCoach has trained hundreds of professionals (See testimonials in French or in English) working with a large number of clients

Eclipse Modeling Course Plan

Modeling Project

  • Project history, introduction to Modeling project
  • EMF / M2T / GEF / GMF / Sirius / Xtext / Xtend / Acceleo ?


  • Language and components description
  • Defining relationships
  • The different Ecore editors (Text based, tree, graphical)
  • Creating and managing its own business model
  • Importing and exporting models

EMF generation

  • The generation model (Genmodel) and its parameters
  • The generated source-code layers
  • Using the generated code and annotation principle
  • Modifying the generated classes and the default generators
  • Setting the validation parameters

Modeling API

  • Reflective model API
  • Loading a model, instantiating model objects
  • Listening to the changes

Custom generation with M2T / Xtend

  • Xtend language overview / Use cases
  • Model usage and relationship to the meta model
  • Polymorphism in templates
  • Writing and launching Xtend templates

Custom generation with M2T / Acceleo

  • Description of the language and tools
  • Model usage and relationship to the meta model
  • Polymorphism in templates
  • Writing and launching Acceleo templates

Graphical Editing Framework (GEF)

  • Framework overview
  • Draw2D: figures, layouts, connections
  • EditParts, EditPolicies, MVC, Tools and Palette

Graphical Modeling Framework (GMF)

  • GMF Runtime and GMF Tooling overview
  • Graphical, tooling and mapping models
  • The generation chain
  • EuGENia: a project to facilitate the use of GMF tooling
  • Sirius: create a graphical representation for your model


  • Xtext framework overview
  • Grammar definition
  • Auto completion, validation and quickfixes
  • Generation fragments and workflows
  • Use cases: XCore, Spray, XTend
  • Integrating Xtend generators in Xtext editors


  • Using modeling project in a development project
  • EMF extensions points: validation, factory
  • How to separate generated code and user code
  • Integrating editors and specific generators in a ‘studio’
  • Comparing generation tooling: Acceleo and XTend

icon-pdf-48 Download the course plan