Modeling and creating domain-specific languages with EMF and Xtext
Abstract
The “Eclipse Modeling Project” provides all the necessary components for model-based software development. The Eclipse tools are useful for building comprehensive, open, domain-specific platforms.
The first two days of this “Eclipse Modeling” workshop introduce the participants to modeling and cover the associated technologies. On the third and fourth day, the participants learn how to create domain-specific languages with Xtext.
Day 1 + 2
EMF
The Eclipse Modeling Framework (EMF) enables developers to rapidly construct applications based on surprisingly simple models.
This workshop covers all major aspects of EMF and the associated technologies.
Agenda
- Introduction to modeling
- Overview of Ecore
- EMF code generation patterns
- RESTful persistence
- Lazy loading and proxy resolution
- Dynamic versus static EMF
- Reflection and Introspection
- Notification and Adapters
- Validation and Constraints
- XML Schema binding
- EMF Utility classes
- Change recording
- Facilities for viewing and editing
Goal
The participants can make professional use of EMF.
Trainer
Ed Merks, Development manager for Eclipse Modeling
Merks comes from IBM, where he last worked in the IBM Rational Toronto Lab. He leads the Eclipse Modeling Project and the Eclipse Modeling Framework and will work for itemis AG from Canada. Merks graduated from Simon Fraser University and holds a Ph.D. in Computing Science.
Day 3 + 4
TMF/Xtext
Xtext is a simple and easy-to-understand tool for creating domain-specific languages (DSLs) and their editors (IDEs). Xtext is a component of the Eclipse Modeling project and integrates well with other technologies from Eclipse Modeling. Based on a simple EBNF-style grammar, necessary components such as a parser, a model, and even a sophisticated Eclipse editor are automatically derived. Powerful extensibility and tight integration with EMF make Xtext a mature solution in the area of model-driven software development (MDSD).
Agenda
- Eclipse Modeling overview and classification of Xtext
- Simple grammars and models
- Validation with Check and Java
- Integration into an MWE workflow and generation with Xpand/Xtend
- Reuse of existing models
- Adaptation of the run-time behavior with dependency injection, scoping and linking
- Overview: More features examples
Goal
Participants know the scope of Xtext and are able to use their own external, textual DSLs
in model-based projects.
Trainer
Karsten Thoms, Software Architect and Coach
Karsten Thoms has been employed by itemis AG for over 6 years as a software architect and coach. His main focus is in the development of individual enterprise systems. Especially in the field of model driven software development, he has made a name for himself as an expert.
He has been active in the openArchitectureWare project for several years now, he is project manager of the Fornax platform, an Eclipse committer and founder of the Fit4oaw project. He regularly passes on his experiences in customer projects, at conferences and as a trainer.
TARGET GROUP / CONDITIONS
Developers and architects with strong Java skills and experience with Eclipse as development environment.
Training dates
We currently have not set a date for this training session. Please contact us if you are interested. We would be glad to hold a training session at your company. Contact us.
