Index: lutingenerator/doc/index.rst diff -u /dev/null lutingenerator/doc/index.rst:1.1 --- /dev/null Fri Dec 29 10:05:40 2006 +++ lutingenerator/doc/index.rst Fri Dec 29 10:05:35 2006 @@ -0,0 +1,73 @@ +LutinGenerator +============== + +.. contents:: + + +Origine du projet +----------------- + +LutinGenerator est né à la suite d'une recherche de générateur de code basé sur +un modèle mémoire simple qui s'est terminée par un échec. + +Les projets alors étudiés étaient alors entre autres : + +- Jostraca ; +- EMF ; +- ... + +Le choix de la génération de code par rapport à l'introspection a été fait car +la génération code permet de passer par l'étape compilation et donc de +validation du code généré. En effet, si le besoin était initialement porté sur +de la génération de code Java, LutinGenerator a été pensé pour générer tout type +de code. + + +Côté technique +-------------- + +LutinGenerator permet l'utilisation d'un ensemble de générateurs. Ces +générateurs sont abstraits de toute spécificité permettant ainsi de les adapter +en fonction des besoins. + +Par défaut, LutinGenerator propose deux implantations de ces générateurs : + +- ObjectModelGenerator (génération à partir d'un modèle objet) ; +- UIModelGenerator (génération à partir d'un modèle graphique). + +Chacun de ses modèle a ses propres spécificités liés à sa structure et son mode +de fonctionnement... + +Cependant, ces générateurs sont inutiles sans des templates de génération. Les +templates sont les fichiers qui vont permettre de déterminer quel sera le +contenu généré en fonction du modèle initial. Grâce à LutinProcessor_, ces +templates sont écrit avec une sytaxe proche de la syntaxe JSP en imbriquant les +portions de code Java avec les portions de code généré. Le rôle de +LutinProcessor est de transformer ces templates en remplaçant la syntaxe JSP par +la syntaxe Java correpondante. Les classes Java obtenues peuvent donc être +compilées et deviennent autonomes. + +.. _LutinProcessor: http://lutinprocessor.labs.libre-entreprise.org/ + +Règle ant +--------- + +Voici un exemple d'utilisation de la règle ant. + +:: + + + +Dans cette exemple, un template de génération sera apliqué sur tous les +fichiers. + +Plugin maven +------------ + +Un plugin maven est disponnible à l'adresse suivante +http://lutingenerator.labs.libre-entreprise.org/maven-generator-plugin . Il permet l'utilisation +depuis maven de LutinGenerator.