IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Eclipse Modeling Discussion :

Plugin EMF - GEF - GMF


Sujet :

Eclipse Modeling

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 17
    Par défaut Plugin EMF - GEF - GMF
    Bonjour à tous.

    Je suis en train de m’intéresser de prêt aux plugins d'Eclipse, EMF, GEF et GMF.
    Je ne devrais avoir seulement besoin que de GMF pour mon stage (le plugin sur lequel il m'a été demandé de m'autoformer avant mon arrivée).

    Petit problème, la documentation et les tutoriels sur ce(s) plugin(s) est difficilement trouvable (soit trop vieux, soit pas assez poussé).

    Le but de mon stage est de concevoir une Interface Homme Machine à l'aide du plugin GMF d'Eclipse.
    J'ai suivi le tuto sur EMF et également sur GMF (si j'ai bien compris, il est plus simple de commencer par EMF), mais je reste sur ma fin...

    Donc plusieurs questions me viennent en tête :

    - Faut-il réellement passer par EMF et GEF avant d'attaquer GMF ?
    - Quelle est la démarche à suivre afin de pouvoir arriver à la construction d'une IHM à part entière (aussi bidon soit-elle)
    - Si quelqu'un pourrait me fournir quelques explications (même succinctes) sur le fonctionnement de ce(s) plugin(s), je suis preneur .
    - Je suis également preneur de tous liens vers une documentation qui pourrait éclairer mes lanternes et ne pas arriver bredouille en stage


    Merci d'avance pour vos réponses.

  2. #2
    Membre Expert
    Avatar de Mickael_Istria
    Homme Profil pro
    Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Inscrit en
    Juillet 2008
    Messages
    1 479
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 479
    Par défaut
    Bonjour,
    Citation Envoyé par Kyarya Voir le message
    Petit problème, la documentation et les tutoriels sur ce(s) plugin(s) est difficilement trouvable (soit trop vieux, soit pas assez poussé).
    Ca m'intéresse beaucoup cette critique. Tu peux détailler les tutos que tu as suivis pour GMF et structurer ta critique (qu'est-ce que n'est plus a jour, qu'est-ce qui t'as paru manquant...).
    Si tu es motivé, ce serait super sympa d'ouvrir un bug chez Eclipse pour faire part de ton feedback et des tes suggestions d'améliorations.

    J'ai suivi le tuto sur EMF et également sur GMF (si j'ai bien compris, il est plus simple de commencer par EMF), mais je reste sur ma fin...
    Je te conseille d'acheter un bouquin sur Eclipse Modeling. Il y en a des tres bien, notamment [ame="http://www.amazon.com/Eclipse-Modeling-Project-Domain-Specific-Language/dp/0321534077"]Amazon.com: Eclipse Modeling Project: A Domain-Specific Language (DSL) Toolkit (9780321534071): Richard C. Gronback: Books@@AMEPARAM@@http://ecx.images-amazon.com/images/I/51Q18s8rKML.@@AMEPARAM@@51Q18s8rKML[/ame]. Il est un peu vieux, mais les concepts n'ont pas changé, et les UI non plus.

    - Faut-il réellement passer par EMF et GEF avant d'attaquer GMF ?
    Non.

    - Quelle est la démarche à suivre afin de pouvoir arriver à la construction d'une IHM à part entière (aussi bidon soit-elle)
    Identifier les entités que l'utilisateur va pouvoir manipuler et leur relations, puis les modéliser avec EMF.
    Ensuite, choisir des figures, créer le gmfgraph, mapper le ecore avec le gmfgraph dans le gmfmap, puis générerer le gmfgen et le diagram.

    Commence par faire ca avec un model tout simple (tu peux mettre des carrés sur le fond du diagram, et des ronds dans les carrés).

    A partir de la, tu corriges tes ecore et gmf* pour arriver a un résultat qui te va, IL FAUT EVITER DE MODIFIER LE CODE GENERE sinon tu peux te retrouver dans des états ou tu ne peux plus faire évoluer ton soft facilement. a la place, tu crées un plugin *.diagram.custom dans lequel tu utilises des providers GMF Runtime pour customiser.


    Si tu te sens de prendre des notes de comment tu progresses avec GMF, et de noter aussi ce qui t'as fait progresser, je serai ravi de collaborer avec toi pour rafraichir le tuto existant, voire en créer un nouveau.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 17
    Par défaut
    Bonjour Michael_Istria, et merci de ta réponse et de l'intérêt que tu portes à mon soucis =D.

    Alors je retire ce que j'ai dit sur les tutos trop vieux, une mauvaise installation d'un plugin m'empêchait de continuer le tutoriel (le release utilisé pour le tutoriel GMF (officiel) était plus vieux mais ça ne changeait pas au final). Au temps pour moi donc.
    Et ce que je voulais dire par pas assez poussé, c'est qu'ils font bien arrivé où cela est prévu mais si on prends mon cas par exemple (nouveau sur Eclipse, alors je vous laisse imaginer), je comprends complètement ce que je fais, et saurais le refaire, mais je ne comprends pas à quoi cela correspond et comment je pourrais réussir à arriver à faire une IHM avec cela ?


    Je te conseille d'acheter un bouquin sur Eclipse Modeling
    Alors je voulais savoir quel était le contenu (pas précis mais dans les grandes lignes) de ce livre, qui serait susceptible de m'intéresser si cela me permet de mieux comprendre comment utilisé GMF (l'anglais ne devrait pas trop posé de problèmes je pense).

    - Quelle est la démarche à suivre afin de pouvoir arriver à la construction d'une IHM à part entière (aussi bidon soit-elle)
    Identifier les entités que l'utilisateur va pouvoir manipuler et leur relations, puis les modéliser avec EMF.
    Ensuite, choisir des figures, créer le gmfgraph, mapper le ecore avec le gmfgraph dans le gmfmap, puis générerer le gmfgen et le diagram.

    Commence par faire ca avec un model tout simple (tu peux mettre des carrés sur le fond du diagram, et des ronds dans les carrés).

    A partir de la, tu corriges tes ecore et gmf* pour arriver a un résultat qui te va, IL FAUT EVITER DE MODIFIER LE CODE GENERE sinon tu peux te retrouver dans des états ou tu ne peux plus faire évoluer ton soft facilement. a la place, tu crées un plugin *.diagram.custom dans lequel tu utilises des providers GMF Runtime pour customiser.
    Après lecture plein de questions me submergent (je précise que je parle dans le cas de la conception d'une IHM) :
    - Qu'est ce que tu entends par entité ? Les objets (classes) auquel(le)s les utilisateurs auront accès ? Et est ce possible de modéliser avec GMF plutôt que EMF ? (j'ai eu une réponse de mon tuteur, je n'utiliserais que GMF).
    - "Figures", "gmfgraph", "mapper le ecore avec le gmfgraph dans le gmfmap" et "gmfgen" sont des termes un peu flou, je sais que je les ai manipulé avec le tutoriel, mais quel est leur utilité à chacun (certain me diront, tant pis ça marche comme ça, pourquoi se prendre la tête -> j'aime bien savoir ^^).
    - La partie de peaufinage à quoi correspond elle ? Mise en place des fonctionnalités ? Embellissement de l'IHM ?

    Et une dernière question (oui je sais, je commence à être agaçant ), comment procéder pour réussir à obtenir et utiliser une IHM à partir du diagramme que l'on a fait ?

    Si tu te sens de prendre des notes de comment tu progresses avec GMF, et de noter aussi ce qui t'as fait progresser, je serai ravi de collaborer avec toi pour rafraichir le tuto existant, voire en créer un nouveau.
    Pour finir, j'ai bien l'intention de prendre des notes (ce qui me changera des mes habitudes) car je trouve ce plugin intéressants mais lorsqu'on est nouveau on s'y perd et risque de ce décourager rapidement de cet apprentissage. Donc je ne suis vraiment pas contre rafraichir ou recréer un tuto qui serait plus abordable et plus explicatif (cf toutes mes questions précédentes =D ) (de plus ça pourrait me permettre de voir si j'ai bien compris ^^).

    Merci encore pour les réponses, et surtout pour le temps passé à y répondre... (je sais que je n'y suis pas allé de main morte, donc des explications par des liens externes ne me dérange pas).

  4. #4
    Membre Expert
    Avatar de Mickael_Istria
    Homme Profil pro
    Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Inscrit en
    Juillet 2008
    Messages
    1 479
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 479
    Par défaut
    Alors je voulais savoir quel était le contenu (pas précis mais dans les grandes lignes) de ce livre, qui serait susceptible de m'intéresser si cela me permet de mieux comprendre comment utilisé GMF (l'anglais ne devrait pas trop posé de problèmes je pense).
    Je sais plus exactement, je ne l'ai plus sous la main, mais je m'y suis refere un paquet de fois quand j'ai commencé a faire du GMF, et ca m'a généralement débloqué.
    Essaie de le faire acheter a ton patron, ou cherche-le dans une BU, il est assez répandu.

    - Qu'est ce que tu entends par entité ? Les objets (classes) auquel(le)s les utilisateurs auront accès ? Et est ce possible de modéliser avec GMF plutôt que EMF ?
    Par entité, j'entends les objets que l'utilisateur va pouvoir utiliser dans son éditeur. Dans le cas de modélisation d'une IHM, j'imagine que ce sera surement des widgets, des pages...

    (j'ai eu une réponse de mon tuteur, je n'utiliserais que GMF).
    Si tu fais du GMF, tu fais aussi du EMF. Dans ton cas, tu créeras avec EMF ton catalogue de widgets et tes pages, et EMF te généreras une API pour manipuler tous ces objets facilement.
    Ensuite, GMF te générera un éditeur de diagramme, dans lequel tu pourras éditer tes pages de maniere graphique plutot que par l'API.

    "Figures", "gmfgraph", "mapper le ecore avec le gmfgraph dans le gmfmap" et "gmfgen" sont des termes un peu flou, je sais que je les ai manipulé avec le tutoriel, mais quel est leur utilité à chacun (certain me diront, tant pis ça marche comme ça, pourquoi se prendre la tête -> j'aime bien savoir ^^).
    Tu les as surement manipulés avec le tuto. Je te conseille de le refaire, et si tu as des doutes des le début, regardes des tutos EMF.


    - La partie de peaufinage à quoi correspond elle ? Mise en place des fonctionnalités ? Embellissement de l'IHM ?
    Essentiellement de l'embellissement et de l'ergonomie.

    comment procéder pour réussir à obtenir et utiliser une IHM à partir du diagramme que l'on a fait ?
    Ca dépend de la techno que tu vas utiliser au runtime. De maniere générale, il faudra surement que tu fasses un export depuis l'éditeur GMF vers un format que ton runtime sait manger pour afficher ton IHM.


    Pour finir, j'ai bien l'intention de prendre des notes (ce qui me changera des mes habitudes) car je trouve ce plugin intéressants mais lorsqu'on est nouveau on s'y perd et risque de ce décourager rapidement de cet apprentissage. Donc je ne suis vraiment pas contre rafraichir ou recréer un tuto qui serait plus abordable et plus explicatif (cf toutes mes questions précédentes =D ) (de plus ça pourrait me permettre de voir si j'ai bien compris ^^).
    Parfait, n'hésites pas a suggérer n'importe quelle amélioration, meme des soucis de vocabulaires. GMF est un projet qui parait compliqué, mais qui en fait ne l'est pas; surement a cause d'une mauvaise doc... Le projet a besoin de gens comme toi

  5. #5
    Membre Expert
    Avatar de Mickael_Istria
    Homme Profil pro
    Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Inscrit en
    Juillet 2008
    Messages
    1 479
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 479
    Par défaut
    Il y a les Eclipse DemoCamp dans les jours qui viennent. Si tu es dans les environs, vas-y, tu y verras des présentations et des gens qui pourront vraiment t'aider.

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 17
    Par défaut
    Bonjour Mickael.

    Alors désolé de ne pas avoir répondu plus tôt, mon déménagement pour Paris c'est fait en fin de semaine dernière et je n'ai pas eu accès au net jusqu'alors.

    Du coup merci pour toutes tes réponses encore une fois et pour le temps que cela t'a pris d'y répondre (je vois les choses beaucoup plus claires).

    Alors par contre tu te doutes bien que je vais en avoir d'autres .
    Avant j'aimerais signaler qu'au final il y a bien un soucis dans le tuto officiel de GMF, car le fichier demandé n'est plus disponible... (lien mort en gros).

    Donc j'ai réussi, tant bien que mal et après avoir fait et bien compris le tuto officiel de EMF, à suivre le tuto de GMF avec l'ecore du tuto EMF (modèle de librairies, livres et écrivains) (donc certaines infos sont différentes dans le modèle, mais je voulais avoir la méthode à suivre au moins).

    Du coup je commence :

    * On me demande, à priori (je dis cela car cela pourrait changer...), une application "plugin" d'Eclipse à réaliser donc avec GMF. Je me demandais donc comment serait-il possible d'effectuer cela :
    - Est ce que l'éditeur, où l'on peut "drag & drop" les éléments de notre modèle pourrait être une application à part entière (il m'est demandé d'avoir une chose très similaire avec des composants électroniques que l'on pourrait "drag & drop" et assembler) ?
    - Si oui y a-t-il une manière pour modifier l'interface du nouvel Eclipse généré et le modeler à mes souhaits pour avoir d'autres perspectives que Java ou Debug par exemple (et même surement enlevé les perspectives là) ?
    - Comment serait-il possible de faire en sorte d'associer des actions aux différents éléments (boutons ajouté à Eclipse ou encore aux éléments de notre modèle ? (ajout de code tel que fonction de parsage XML, fonction de génération d'XML en connaissant les propriétés de mes objets))

    * S'il n'est pas possible d'avoir une instance d'Eclipse comme application, j'aimerais savoir :
    - Quelle serait la méthode à suivre et le modèle ecore à effectuer afin de pouvoir faire une simple fenêtre "Hello World" avec un bouton au centre de la fenêtre (par exemple) ?
    - Et donc comment utilise-t-on le diagramme que l'on a généré (la nouvelle instance d'Eclipse donc) et comment arriver au résultat final ?


    Je tiens à préciser que je vais acheter le bouquin que tu m'as conseillé, j'ai l'impression d'être un peu à la ramasse partout en ce qui concerne GMF même si je comprends tout de même un peu plus (et je n'ai pas spécialement envie qu'un soucis technologique me freine pour mon stage...).

    Merci encore une fois pour les réponses, et encore désolé pour le retard.

    Edit : J'avais lu quelques trucs sur le net à propos des Eclipse DemoCamp mais le problème c'est que cela n'était pas par chez moi, et cela ne concordait pas avec mon déménagement... Dommage.

  7. #7
    Membre Expert
    Avatar de Mickael_Istria
    Homme Profil pro
    Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Inscrit en
    Juillet 2008
    Messages
    1 479
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 479
    Par défaut
    Citation Envoyé par Kyarya Voir le message
    Avant j'aimerais signaler qu'au final il y a bien un soucis dans le tutoriel officiel de GMF, car le fichier demandé n'est plus disponible... (lien mort en gros).
    Ca date de quand, je suis censé en avoir fixe récemment, mais j'en ai surement loupe. Peux-tu s'il-te-plait rajouter des détails ici: http://bugs.eclipse.org/330997

    Est ce que l'éditeur, où l'on peut "drag & drop" les éléments de notre modèle pourrait être une application à part entière (il m'est demandé d'avoir une chose très similaire avec des composants électroniques que l'on pourrait "drag & drop" et assembler) ?
    Oui, tu peux faire une application RCP, qui est une appli qui utilise tous les plugins Eclipse que tu veux, mais à laquelle tu peux donner une tête differente.

    Si oui y a-t-il une manière pour modifier l'interface du nouvel Eclipse généré et le modeler à mes souhaits pour avoir d'autres perspectives que Java ou Debug par exemple (et même surement enlevé les perspectives là) ?
    Oui, le mot clé c'est Eclipse RCP. La aussi, de bons bouquins existent.

    Comment serait-il possible de faire en sorte d'associer des actions aux différents éléments (boutons ajouté à Eclipse ou encore aux éléments de notre modèle ? (ajout de code tel que fonction de parsage XML, fonction de génération d'XML en connaissant les propriétés de mes objets))
    Je ne comprends pas bien ton use-case, mais c'est possible. Tout est plugin...


    Merci encore une fois pour les réponses, et encore désolé pour le retard.
    On se doit rien l'un à l'autre, donc il n'y a pas de retard, et encore moins besoin d'excuse

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [EMF + GEF + GMF] Vos retours d'expériences
    Par jIdJo dans le forum Eclipse Modeling
    Réponses: 20
    Dernier message: 06/03/2014, 12h18
  2. Est-ce que EMF/GEF/GMF peuvent m'être utiles?
    Par Angi21 dans le forum Général Java
    Réponses: 6
    Dernier message: 08/03/2011, 16h21
  3. GMF, EMF, GEF, pleins d'acronyme et si peu d'explications....
    Par titeuf92 dans le forum Eclipse Modeling
    Réponses: 6
    Dernier message: 10/11/2010, 10h28
  4. EMF - GEF - GMF
    Par SpIrIt505050 dans le forum Eclipse Platform
    Réponses: 6
    Dernier message: 21/02/2010, 15h02
  5. [plugin] emf EMFProjectWizard problem ...
    Par Invité dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 08/03/2006, 13h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo