EMF-GMF

Durée: 
5 jour(s)
Nombre de personnes: 
8 maximum
Lieu (ville ou aglomération): 
Nantes
Public (niveau): 
Architectes, développeurs
Société dispensant la formation: 
Société agrée centre de formation
Conditions d'annulation: 
S'il y a moins de 3 personnes, la formation pourra être annulée par l'entreprise la donnant, en respectant un délai de 15 jours minimum avant la date prévue.
Objectifs: 
  • Connaître et savoir utiliser les plugins Eclipse EMF, GEF, GMF
  • Développer des applications basées sur ces outils

Formation mise au point par des commiteurs Eclipse et des vrais spécialistes EMF et GMF

Pré-requis: 

Bonne maîtrise de Java. Bases de la programmation de plugins Eclipse.

Méthode/Outils pédagogiques: 

Nombreux exercices pratiques (66%)

Outils utilisés: 

Eclipse avec plugins Modeling, Acceleo 3 et ATL (les outils sont fournis)

Programme détaillé: 

1 - Présentation de Eclipse Modeling Project

  • Structuration et tour d'horizon des projets Eclipse
  • Introduction aux concepts MDA et approche DSM
  • Introduction aux frameworks du projet EMP

Exercices :

  • Installation et paramétrage des environnements
  • Navigation dans un modèle et son méta-modèle existant

Durée du module : 1,5 h

2 - Les modèles Ecore et GenModel

  • Concepts de base de Eclipse EMF
  • Le métamodèle Ecore
  • Les datatypes
  • Explication détaillée du GenModel
  • Lien entre métamodèles

Exercices :

  • Développement d'un modeleur EMF basique, avec définition d'un métamodèle spécifique
  • Création de modèles conformes à ce métamodèle
  • Premières personnalisations du modeleur

Durée du module : 1,5h

3 - Fonctionnalités avancées d'EMF

  • Exploration des frameworks EMF.edit et EMF.Codegen
  • API générée et réflective EMF
  • Système de notification
  • EMF depuis XSD
  • Trucs & Astuces

Exercices :

  • Personnalisations avancées du modeleur EMF
  • Développement d'une sérialisation XML selon un XML schéma imposé
  • Manipulation programmatique des modèles

Durée de module : 4h

4 - Extensions EMF

  • Panorama de l'écosystème EMF (CDO, Teneo, ...)
  • Vérification de modèles avec EMF Validation
  • Comparaison de modèles avec EMF Compare
  • Génération de code (approche M2T) avec Acceleo
  • Transformation de modèles (approche M2M) avec ATL

Exercices :

  • Développement d'un outillage mettant en œuvre différents composants
  • Validation de modèles
  • Comparaison de modèles
  • Génération de code
  • Transformation de modèles

Durée du module : 7 h

5 - Introduction à GMF

  • Introduction aux DSM (Domain Specific Modeler)
  • Présentation du projet GMF et de son organisation
  • Gestion d'un projet de création d'un modeleur GMF

Exercices :

  • Navigation et utilisation de modeleurs existants GMF
  • Comparaison avec des outils GEF

Durée du module : 2,5 h

6 - GEF

  • Objectifs de GEF
  • Introduction à la librairie draw2d
  • L'architecture MVC de GEF
  • API et développement de composants GEF (EditPart et EditPolicy)

Exercices :

  • Ajout de fonctionnalités dans un modeleur GEF existant

Durée du module : 4,5 h

7 - GMF Tooling

  • Architecture GMF
  • Le modèle de définition graphique
  • Le modèle de définition des outils
  • Le modèle de définition du mapping
  • Le modèle de génération

Exercices :

  • Mise au point de modeleurs simples
  • Exploitation des modèles pour générer du code
  • Explication du code généré

Durée du module : 3,5 h

8 - GMF Runtime

  • La librairie GMF Runtime
  • Création de nouveaux comportements
  • Ergonomie avancée
  • Point d'extension GMF

Exercices :

  • Améliorations ergonomiques du modeleur
  • Utilisation des providers GMF

Durée du module : 3,5 h

9 - GMF avancé

  • Les raccourcis entre modeleurs
  • Packaging et déploiement des projets EMF et GMF
  • Trucs & Astuces
  • Changement dynamique des labels et éléments graphiques

Exercices :

  • Personnalisation du graphisme
  • Exploitation des parsers GMF
  • Association de deux modeleurs
  • industrialisation des exercices

Durée du module : 7 h