EMF-GMF

 

Informations générales

  • Prestataire : Obeo
  • Lieu : Nantes
  • Durée : 5 jours - 9h-12h30 14h-17h30
  • Public (niveau) : Architectes, développeurs
  • Nbre de personnes (maxi) : 8
  • 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.
  • Formation mise au point par des commiteurs Eclipse et des vrais spécialistes EMF et GMF
  • Société agréée centre de formation.

 

Objectifs

  • Connaître et savoir utiliser les plugins Eclipse EMF, GEF, GMF
  • Développer des applications basées sur ces outils

 

Pré-requis

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

 

Méthode (outils pédagogiques)

  • Nombreux exercices pratiques (66%)

     

    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

     

    Outils utilisés

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