Author: fdesbois Date: 2010-03-03 14:40:14 +0100 (Wed, 03 Mar 2010) New Revision: 828 Modified: trunk/src/site/fr/rst/02-objectmodel.rst trunk/src/site/fr/rst/03-generation.rst trunk/src/site/fr/rst/04-templates.rst trunk/src/site/fr/rst/05-execution.rst trunk/src/site/fr/rst/06-fonctionnalites-avancees.rst trunk/src/site/fr/rst/07-glossaire.rst trunk/src/site/fr/rst/08-FAQ.rst trunk/src/site/fr/rst/eugene-plan.rst trunk/src/site/fr/rst/index.rst trunk/src/site/site_fr.xml Log: Continue documentation for v2.0 Modified: trunk/src/site/fr/rst/02-objectmodel.rst =================================================================== --- trunk/src/site/fr/rst/02-objectmodel.rst 2010-02-26 16:48:46 UTC (rev 827) +++ trunk/src/site/fr/rst/02-objectmodel.rst 2010-03-03 13:40:14 UTC (rev 828) @@ -7,9 +7,13 @@ :Revision: $Revision: 650 $ :Date: $Date: 2009-10-21 15:22:32 +0200 (Wed, 21 Oct 2009) $ +Note + Ce document ne considère pas pour le moment les évolutions apportées par + la version 2.0 d'EUGene. .. contents:: +TODO : revoir cette documentation Introduction ============ Modified: trunk/src/site/fr/rst/03-generation.rst =================================================================== --- trunk/src/site/fr/rst/03-generation.rst 2010-02-26 16:48:46 UTC (rev 827) +++ trunk/src/site/fr/rst/03-generation.rst 2010-03-03 13:40:14 UTC (rev 828) @@ -20,15 +20,13 @@ Deux possibilités de génération : -- Génération simple : template de génération -- Génération complète : lecture de modèle + transformeur de modèle + +- `Generation simple`_ : template de génération +- `Generation complete`_ : lecture de modèle + transformeur de modèle + template de génération simple (généralement unique au langage de sortie) -Nous verrons également le cas concret de la génération de code Java. +Nous verrons également le cas concret de la `Generation Java`_ . -.. contents:: - -Génération simple +Generation simple ----------------- EUGene nécessite en entrée du processus de génération un ou plusieurs fichiers @@ -43,27 +41,19 @@ plusieurs générateurs (Generator) en utilisant une `syntaxe simple`_ interprété par `Nuiton-processor`_ . -.. _ObjectModel: 02-objectmodel.html - -.. _Nuiton-processor: http://maven-site.nuiton.org/processor/nuiton-processor/index.html - -.. _syntaxe simple: 04-templates.html - .. image:: ../schemas/03-generation-simple.png Par défaut EUGene manipule de l'ObjectModel résultants de formats de fichiers connus comme les fichiers zargo, zuml ou xmi (voir `Writer`_ ) . -.. _Writer: 06-fonctionnalites-avancees.html#Writer - -Génération complète +Generation complete ------------------- Il est possible d'utiliser un autre format de fichier que le xmi ou l'objectmodel en entrée d'EUGene, dans ce cas il est nécessaire de convertir ce format pour remplir l'ObjectModel mémoire. Il est ainsi possible d'utiliser -un `Reader`_ approprié. Il est également possible d'utiliser un autre modèle -que l'ObjectModel comme le StateModel par exemple (le Reader utilisé sera +un `ModelReader`_ approprié. Il est également possible d'utiliser un autre modèle +que l'ObjectModel comme le StateModel par exemple (le ModelReader utilisé sera le StateModelReader). Comme précédemment, il est possible d'écrire des générateurs pour interprété l'ObjectModel et le convertir en fichiers. Mais il est également possible d'utiliser un transformeur de modèle qui se comporte @@ -71,20 +61,18 @@ de fichiers mais sur la création d'un nouveau modèle prêt à être de nouveau interprété par un générateur. Le contenu du transformeur n'est plus une template de génération mais de la transformation de modèle : la conversion du modèle -d'entrée interprété par le Reader vers un modèle de sortie plus simple à +d'entrée interprété par le ModelReader vers un modèle de sortie plus simple à manipuler dans un autre générateur. Cela permet principalement de concentrer l'interprétation du modèle dans les transformeurs et d'utiliser un générateur basique spécifique à un langage par exemple. .. image:: ../schemas/03-generation-complete.png -.. _Reader: 06-fonctionnalites-avancees.html#Reader +L'ObjectModel peut être également utilisé comme modèle résultat de la +transformation sans contenir nécessairement les spécificités du modèle +(norme UML) mais plus celles du langage (Java par exemple). -L'ObjectModel est également utilisé comme résultat de la transformation -mais ne comporte plus les spécificités du modèle (norme UML) mais celles du -langage (Java par exemple). - -Génération Java +Generation Java --------------- Nous arrivons vers le cas pratique de la génération de code Java. Ici le modèle @@ -102,12 +90,17 @@ souhaité, comme notamment les `extensions`_ (pour Java : ImportsManager, AnnotationManager, ...) et le builder (pour Java : JavaBuilder). -.. _extensions: 06-fonctionnalites-avancees.html#Extension - Il est conseillé d'utiliser maven pour `executer`_ la génération en utilisant le `maven-eugene-plugin`_ . La configuration du plugin permet de préciser les différents éléments de la génération (writer, reader, model, template, ...). -.. _executer: 05-execution.html +.. _ObjectModel: 02-objectmodel.html +.. _syntaxe simple: 04-templates.html#Syntaxe_dcriture_dun_Generator +.. _Nuiton-processor: http://maven-site.nuiton.org/processor/nuiton-processor/index.html +.. _Writer: 06-fonctionnalites-avancees.html#Writer +.. _ModelReader: 06-fonctionnalites-avancees.html#ModelReader + +.. _extensions: 06-fonctionnalites-avancees.html#Extension +.. _executer: 05-execution.html .. _maven-eugene-plugin: ../maven-eugene-plugin/fr/index.html \ No newline at end of file Modified: trunk/src/site/fr/rst/04-templates.rst =================================================================== --- trunk/src/site/fr/rst/04-templates.rst 2010-02-26 16:48:46 UTC (rev 827) +++ trunk/src/site/fr/rst/04-templates.rst 2010-03-03 13:40:14 UTC (rev 828) @@ -13,15 +13,13 @@ Nuiton-processor) - Utilisation d'un Transformer (transformation de modèle écrite en Java) -.. _Processus de generation: 03-generation.html - EUGene considère les Generator et les Transformer comme tout deux des templates de génération avec comme point commun un modèle en entrée. La différence réside à la sortie, le Generator aura la charge d'écrire des fichiers tandis que le Transformer chargera un nouveau modèle de même type ou non. -EUGene manipule principalement l'ObjectModel, il y a donc un existant abstrait -pour la manipulation de ce type de modèle : ObjectModelGenerator et +EUGene manipule principalement l' `ObjectModel`_ , il y a donc un existant +abstrait pour la manipulation de ce type de modèle : ObjectModelGenerator et ObjectModelTransformer. EUGene implémente également une solution simple pour la génération de code Java. @@ -51,10 +49,10 @@ Generator disponibles ~~~~~~~~~~~~~~~~~~~~~ -- AbstractGenerator : entrée à définir -- ObjectModelGenerator : ObjectModel en entrée -- StateModelGenerator : StateModel en entrée -- JavaGenerator : ObjectModel orienté Java (avec extensions) en entrée +- `AbstractGenerator`_ : entrée à définir +- `ObjectModelGenerator`_ : ObjectModel en entrée +- `StateModelGenerator`_ : StateModel en entrée +- `JavaGenerator`_ : ObjectModel orienté Java (avec extensions) en entrée Implantation d'une transformation de modèle ------------------------------------------- @@ -120,6 +118,8 @@ ObjectModelBuilder ~~~~~~~~~~~~~~~~~~ +`Ref ObjectModelBuilder`_ + Cet outil permet de remplir un ObjectModel directement depuis un Transformer. Il s'agit bien évidemment du cas où le modèle de sortie du Transformer est un ObjectModel. Cette classe permet de faciliter l'écriture de l'ObjectModel, @@ -138,10 +138,10 @@ Transformer disponibles ~~~~~~~~~~~~~~~~~~~~~~~ -- Transformer : entrée et sortie à définir -- ObjectModelTransformer : ObjectModel en entrée, sortie à définir -- ObjectModelTransformerToJava : ObjectModel en entrée, ObjectModel en sortie, - JavaGenerator en template de sortie. +- `Transformer`_ : entrée et sortie à définir +- `ObjectModelTransformer`_ : ObjectModel en entrée, sortie à définir +- `ObjectModelTransformerToJava`_ : ObjectModel en entrée, ObjectModel en sortie, + `JavaGenerator`_ en template de sortie. Générateur de java ------------------ @@ -151,11 +151,11 @@ org.nuiton.eugene.java) : - Fichiers en entrée : xmi, objectmodel, zargo, zuml -- Reader : ObjectModelReader -- input Model : ObjectModel -- output Model : ObjectModel orienté Java (avec extensions) -- Transformer abstrait : ObjectModelTransformerToJava -- Generator de sortie : JavaGenerator +- `ModelReader`_ : `ObjectModelReader`_ +- input `Model`_ : ObjectModel +- output `Model`_ : ObjectModel orienté Java (avec extensions) +- `Transformer`_ abstrait : `ObjectModelTransformerToJava`_ +- `Generator`_ de sortie : `JavaGenerator`_ Pour chaque type de génération souhaité, il suffit donc d'hérité de ObjectModelTransformerToJava et d'utiliser les méthodes transformFrom @@ -167,6 +167,8 @@ JavaBuilder ~~~~~~~~~~~ +`Ref JavaBuilder`_ + Pour faciliter l'écriture de l'ObjectModel orienté Java, le JavaBuilder est utilisé de façon transparente car l'ObjectModelTransformerToJava propose l'ensemble de ses méthodes directement (délégation). Ainsi, la transformation @@ -189,4 +191,25 @@ La gestion des imports est faite automatiquement sur les types manipulés (type d'attribut, de paramètre, retour de méthode, interface, ...). Cette gestion utilise l'extension ImportsManagerExtension qui gère un ImportsManager - par classifier. \ No newline at end of file + par classifier. + +.. _Processus de generation: 03-generation.html +.. _ObjectModel: 02-objectmodel.html + +.. _AbstractGenerator: ../eugene/apidocs/org/nuiton/eugene/AbstractGenerator.html +.. _ObjectModelGenerator: ../eugene/apidocs/org/nuiton/eugene/models/object/ObjectModelGenerator.html +.. _StateModelGenerator: ../eugene/apidocs/org/nuiton/eugene/models/state/StateModelGenerator.html +.. _JavaGenerator: ../eugene/apidocs/org/nuiton/eugene/java/JavaGenerator.html + +.. _Ref ObjectModelBuilder: ../eugene/apidocs/org/nuiton/eugene/models/object/ObjectModelBuilder.html + +.. _Transformer: ../eugene/apidocs/org/nuiton/eugene/Transformer.html +.. _ObjectModelTransformer: ../eugene/apidocs/org/nuiton/eugene/models/object/ObjectModelTransformer.html +.. _ObjectModelTransformerToJava: ../eugene/apidocs/org/nuiton/eugene/java/ObjectModelTransformerToJava.html + +.. _ModelReader: ../eugene/apidocs/org/nuiton/eugene/ModelReader.html +.. _ObjectModelReader: ../eugene/apidocs/org/nuiton/eugene/models/object/ObjectModeReader.html +.. _Model: ../eugene/apidocs/org/nuiton/eugene/models/Model.html +.. _Generator: ../eugene/apidocs/org/nuiton/eugene/AbstractGenerator.html + +.. _Ref JavaBuilder: ../eugene/apidocs/org/nuiton/eugene/java/JavaBuilder.html \ No newline at end of file Modified: trunk/src/site/fr/rst/05-execution.rst =================================================================== --- trunk/src/site/fr/rst/05-execution.rst 2010-02-26 16:48:46 UTC (rev 827) +++ trunk/src/site/fr/rst/05-execution.rst 2010-03-03 13:40:14 UTC (rev 828) @@ -0,0 +1,38 @@ +Execution +========= + +:Author: Florian Desbois +:Contact: eugene-devel@list.nuiton.org ou eugene-users@list.nuiton.org +:Revision: $Revision$ +:Date: $Date$ + +Pour mettre en oeuvre la génération en utilisant EUGene, il est possible +d'utiliser les principaux utilitaires de build : `Ant`_ et `Maven`_ + +Ant +--- + +TODO + +Maven +----- + +Tout d'abord il vous faut la dépendance d'EUGene pour pouvoir utiliser son +API :: + + <dependency> + <groupId>org.nuiton.eugene</groupId> + <artifactId>eugene</artifactId> + <version>${eugene.version}</version> + <scope>provided</scope> + </dependency> + +A noter que le scope provided suffit, étant donné qu'EUGene n'est utilisé +qu'à la compilation/génération. + +Vous pouvez désormais étendre les Transformer et Generator désirés pour +pouvoir générer des fichiers en utilisant le plugin maven. Voir `les exemples +et la documentation du plugin`_ . + +.. _les exemples et la documentation du plugin: ../maven-eugene-plugin/fr/example.html + Modified: trunk/src/site/fr/rst/06-fonctionnalites-avancees.rst =================================================================== --- trunk/src/site/fr/rst/06-fonctionnalites-avancees.rst 2010-02-26 16:48:46 UTC (rev 827) +++ trunk/src/site/fr/rst/06-fonctionnalites-avancees.rst 2010-03-03 13:40:14 UTC (rev 828) @@ -13,21 +13,13 @@ EUGene peut être étendu sur les quatres notions de base : - `Writer`_ : conversion fichiers vers fichiers -- `Reader`_ : conversion fichiers vers modèle +- `ModelReader`_ : conversion fichiers vers modèle - Transformer : conversion modèle vers modèle (voir `Templates`_ ) - Generator : conversion modèle vers fichiers (voir `Templates`_ ) -Les `extensions`_ permettent également d'enrichir le modèle de base d'EUGene : +Les `Extension`_ permettent également d'enrichir le modèle de base d'EUGene : l'ObjectModel. -.. _Templates: 04-templates.html - -.. _Writer: 06-fonctionnalites-avancees.html#Writer - -.. _Reader: 06-fonctionnalites-avancees.html#Reader - -.. _extensions: 06-fonctionnalites-avancees.html#Extension - Writer ------ @@ -42,22 +34,24 @@ TODO : explication chainage -Reader ------- +ModelReader +----------- -Le Reader permet de charger un Model à partir de fichiers. Il sert à l'execution -d'EUGene pour lire certains fichiers d'entrée et remplir le modèle correspondant. -Les deux Reader disponibles sont : +`Ref ModelReader`_ -- ObjectModelReader : utilisation de digester pour lire les fichiers +Le ModelReader permet de charger un Model à partir de fichiers. Il sert à +l'execution d'EUGene pour lire certains fichiers d'entrée et remplir le modèle +correspondant. Les deux ModelReader disponibles sont : + +- `ObjectModelReader`_ : utilisation de digester pour lire les fichiers **objectmodel**. -- StateModelReader : utilisation de digester pour lire les fichiers +- `StateModelReader`_ : utilisation de digester pour lire les fichiers **statemodel**. Il est possible de gérer un autre format de fichier en entrée et de le manipuler -via un nouveau Reader que vous devrez créer en héritant du Reader de base. Il -est également possible de gérer un autre type de Model et de créer un Reader -qui se chargera de le remplir. +via un nouveau ModelReader que vous devrez créer en héritant du ModelReader de +base. Il est également possible de gérer un autre type de Model et de créer un +ModelReader qui se chargera de le remplir. TODO : intégration reader dans maven @@ -75,7 +69,7 @@ L'ObjectModel racine permet la récupération d'une extension avec une référence unique. Si l'extension n'existe pas, elle sera automatiquement créer. -Il faut utiliser pour se faire la méthode :: +Il faut utiliser pour se faire la méthode de l' `interface ObjectModel`_ :: <O> O getExtension(String reference, Class<O> extensionClass) throws ClassCastException, IllegalArgumentException; @@ -87,17 +81,35 @@ Pour Java, trois extensions ont été créés : -- ImportsManagerExtension : associe un ImportsManager avec un ObjectModelClassifier. - L'ImportsManager se charge d'enregistrer tous les imports nécessaires à ce - classifier (class, interface, enum). +- `ImportsManagerExtension`_ : associe un `ImportsManager`_ avec un + `ObjectModelClassifier`_ . L'ImportsManager se charge d'enregistrer tous les + imports nécessaires à ce classifier (class, interface, enum). -- AnnotationsManagerExtension : associe un AnnotationsManager à un ObjectModelClassifier. - L'AnnotationManager se charge d'enregistrer les annotations pour un classifier - sur un ObjectModelElement (operation, parameter, attribute, classifier, ...) +- `AnnotationsManagerExtension`_ : associe un `AnnotationsManager`_ à un + `ObjectModelClassifier`_ . L'AnnotationManager se charge d'enregistrer les + annotations pour un classifier sur un `ObjectModelElement`_ (operation, + parameter, attribute, classifier, ...) -- ConstantsManagerExtension : permet de gérer un cache sur les noms des constantes +- `ConstantsManagerExtension`_ : permet de gérer un cache sur les noms des constantes manipulés pendant une génération. TODO : more explanation about this +.. _Templates: 04-templates.html +.. _Ref ModelReader: ../eugene/apidocs/org/nuiton/eugene/ModelReader.html +.. _ObjectModelReader: ../eugene/apidocs/org/nuiton/eugene/models/object/ObjectModelReader.html +.. _StateModelReader: ../eugene/apidocs/org/nuiton/eugene/models/state/StateModelReader.html +.. _interface ObjectModel: ../eugene/apidocs/org/nuiton/eugene/models/object/ObjectModel.html +.. _ImportsManagerExtension: ../eugene/apidocs/org/nuiton/eugene/java/ImportsManagerExtension.html +.. _ImportsManager: ../eugene/apidocs/org/nuiton/eugene/java/ImportsManager.html +.. _AnnotationsManagerExtension: ../eugene/apidocs/org/nuiton/eugene/java/AnnotationsManagerExtension.html +.. _AnnotationsManager: ../eugene/apidocs/org/nuiton/eugene/java/AnnotationsManager.html +.. _ConstantsManagerExtension: ../eugene/apidocs/org/nuiton/eugene/java/ConstantsManagerExtension.html + +.. _ObjectModelElement: ../eugene/apidocs/org/nuiton/eugene/models/object/ObjectModelElement.html +.. _ObjectModelClassifier: ../eugene/apidocs/org/nuiton/eugene/models/object/ObjectModelClassifier.html + + + + Modified: trunk/src/site/fr/rst/07-glossaire.rst =================================================================== --- trunk/src/site/fr/rst/07-glossaire.rst 2010-02-26 16:48:46 UTC (rev 827) +++ trunk/src/site/fr/rst/07-glossaire.rst 2010-03-03 13:40:14 UTC (rev 828) @@ -1,35 +1,89 @@ Glossaire ========= -- MDA : - Model Driven Architecture : technique de programmation basé sur les modèles. +MDA +--- -- UML : - Unified Modeling Language : langage de modélisation. +**M**odel **D**riven **A**rchitecture : technique de programmation basé sur +les modèles. -- XMI : - XML Metadata Interchange : norme XML pour le langage UML. +Refs : `MDA`_ , `Introduction EUGene`_ -- Template : - Classe permettant la génération de fichiers à partir d'un modèle de données. +.. _MDA: http://fr.wikipedia.org/wiki/Model_driven_architecture +.. _Introduction EUGene: 01-introduction.html -- Transformer : - Transformateur de modèle : conversion d'un modèle A en modèle B. +UML +--- -- Generator : - Générateur de fichiers de sorties à partir d'un modèle d'entrée. +**U**nified **M**odeling **L**anguage : langage de modélisation. -- ObjectModel : - Méta-modèle objet d'EUGene avec spécificités UML (multiplicités, héritage, ...) +Refs : `Site officiel UML`_ , `ObjectModel EUGene`_ -- Builder : - Constructeur de modèle, permet de créer et remplir un modèle directement en - Java. +.. _Site officiel UML: http://www.uml.org/ +.. _ObjectModel EUGene: 02-objectmodel.html -- Extension : - Extensions de modèle, permet de rajouter des fonctionnalités spécifiques à - un modèle. Utilisé principalement dans l'ObjectModel pour y rattacher les - spécificités au langage Java non présente par défaut. +XMI +--- -- Nuiton-processor : - Librairie permettant d'interprété la syntaxe des templates. +**X**ML **M**etadata **I**nterchange : norme XML pour le langage UML. + +Refs : `Site officiel XMI`_ , `ObjectModel EUGene`_ + +.. _Site officiel XMI: http://www.omg.org/technology/documents/formal/xmi.htm + +Template +-------- + +Classe permettant la génération de fichiers à partir d'un modèle de données. + +Ref : `Templates EUgene`_ , `librairie Nuiton-processor`_ + +.. _Templates EUGene: 04-templates.html +.. _librairie Nuiton-processor: http://maven-site.nuiton.org/processor + +Transformer +----------- + +Transformateur de modèle : conversion d'un modèle A en modèle B. + +Ref : `Templates EUGene`_ + +Generator +--------- + +Générateur de fichiers de sorties à partir d'un modèle d'entrée. + +Ref : `Templates EUGene`_ + +ObjectModel +----------- + +Méta-modèle objet d'EUGene avec spécificités UML (multiplicités, héritage, ...) + +Refs : `ObjectModel EUGene`_ + +Builder +------- + +Constructeur de modèle, permet de créer et remplir un modèle directement en +Java. + +Refs : `Fonctionnalites avancees EUGene`_ + +.. _Fonctionnalites avancees EUGene: 06-fonctionnalites-avancees.html + +Extension +--------- + +Extensions de modèle, permet de rajouter des fonctionnalités spécifiques à +un modèle. Utilisé principalement dans l'ObjectModel pour y rattacher les +spécificités au langage Java non présente par défaut. + +Refs : `Fonctionnalites avancees EUGene`_ + +Nuiton-processor +---------------- + +Librairie permettant d'interprété la syntaxe des templates. + +Ref : `librairie Nuiton-processor`_ Modified: trunk/src/site/fr/rst/08-FAQ.rst =================================================================== --- trunk/src/site/fr/rst/08-FAQ.rst 2010-02-26 16:48:46 UTC (rev 827) +++ trunk/src/site/fr/rst/08-FAQ.rst 2010-03-03 13:40:14 UTC (rev 828) @@ -27,15 +27,30 @@ /*{generator option: parentheses = false}*/ /*{generator option: writeString = +}*/ -Il suffit ensuite d'utiliser les balises /*{ }*/ pour ajouter le corps d'une +Il suffit ensuite d'utiliser les balises ``/*{ }*/`` pour ajouter le corps d'une méthode :: - setOperationBody(setValue, "" + setOperationBody(setValue, "" /*{ this.value = value; }*/ - ); + ); Note Il est conseillé de faire des essais pour la mise en page du fichier résultant au même titre que pour les résultats d'un Generator. + +Où puis-je trouver des exemples de Transformer ou Generator ? +============================================================= + +En attendant les tutoriels et une version demo, le projet ayant le plus +d'exemples concrets sur l'utilisation d'EUGene est le projet +`ToPIA`_ . Vous y trouverez dans le code source (module ToPIA-persistence) +de nombreux exemples de Transformer et/ou Generator pour la génération de code +Java (utilisation en tant que superclasse du Transformer +ObjectModelTransformerToJava ou du Generator ObjectModelGenerator). +Vous trouverez également quelques exemples dans les tests d'intégration du +`maven-eugene-plugin`_ : répertoire **src/it/smart-generate**. + +.. _ToPIA: http://nuiton.org/projects/show/topia +.. _maven-eugene-plugin: ../maven-eugene-plugin/fr/index.html Modified: trunk/src/site/fr/rst/eugene-plan.rst =================================================================== --- trunk/src/site/fr/rst/eugene-plan.rst 2010-02-26 16:48:46 UTC (rev 827) +++ trunk/src/site/fr/rst/eugene-plan.rst 2010-03-03 13:40:14 UTC (rev 828) @@ -35,7 +35,7 @@ - Fonctionnalités avancées * Writer - * Reader + * ModelReader * Extension - Glossaire @@ -144,8 +144,8 @@ - Principe de chaînage -Reader -~~~~~~ +ModelReader +~~~~~~~~~~~ Ressources : fdesbois, echatellier? Modified: trunk/src/site/fr/rst/index.rst =================================================================== --- trunk/src/site/fr/rst/index.rst 2010-02-26 16:48:46 UTC (rev 827) +++ trunk/src/site/fr/rst/index.rst 2010-03-03 13:40:14 UTC (rev 828) @@ -1,19 +1,43 @@ ====== -EUGEne +EUGene ====== -.. contents:: +**E**fficient **U**niversal **Gene**rator +Vous trouverez dans cette documentation : -Présentation ------------- +- `Introduction`_ : introduction sur les principes d'EUGene +- `ObjectModel`_ : Méta-modèle principal d'EUGene utiliser pour la génération +- `Processus de generation`_ : Etapes de génération +- `Templates`_ : Ecriture des templates (`Transformer`_ et `Generator`_ ) +- `Execution`_ : Execution de la génaration (via Maven ou Ant) +- `Fonctionnalites avancees`_ : Comment étendre les fonctionnalités d'EUGene +- `Glossaire`_ : Glossaire des termes utiliser dans EUGene +- `FAQ`_ : Foire aux questions +.. _Introduction: 01-introduction.html +.. _ObjectModel: 02-objectmodel.html +.. _Processus de generation: 03-generation.html +.. _Templates: 04-templates.html +.. _Execution: 05-execution.html +.. _Fonctionnalites avancees: 06-fonctionnalites-avancees.html +.. _Glossaire: 07-glossaire.html +.. _Transformer: 07-glossaire.html +.. _Generator: 07-glossaire.html +.. _FAQ: 08-FAQ.html + Le projet EUGene est composé de 3 modules : * `eugene-api`_ * `ant-eugene-task`_ * `maven-eugene-plugin`_ -.. _eugene-api: eugene/index.html -.. _ant-eugene-task: ant-eugene-task/index.html -.. _maven-eugene-plugin: maven-eugene-plugin/index.html \ No newline at end of file +.. _eugene-api: ../eugene/fr/index.html +.. _ant-eugene-task: ../ant-eugene-task/fr/index.html +.. _maven-eugene-plugin: ../maven-eugene-plugin/fr/index.html + +Plus d'infos sur le projet sur la `forge nuiton`_ . + +.. _forge nuiton: http://www.nuiton.org/projects/show/eugene + +A venir des tutoriels ainsi qu'une application demo. \ No newline at end of file Modified: trunk/src/site/site_fr.xml =================================================================== --- trunk/src/site/site_fr.xml 2010-02-26 16:48:46 UTC (rev 827) +++ trunk/src/site/site_fr.xml 2010-03-03 13:40:14 UTC (rev 828) @@ -45,6 +45,8 @@ <item name="Nuiton-processor" href="http://maven-site.nuiton.org/processor"/> <item name="ToPIA" href="http://maven-site.nuiton.org/topia"/> <item name="ArgoUML" href="http://argouml.tigris.org/"/> + <item name="UML" href="http://www.uml.org/"/> + <item name="XMI" href="http://www.omg.org/technology/documents/formal/xmi.htm"/> </menu> <!-- TC-20100117 does not works on none primary language -->