|
Qu'est-ce que c'est ? |

| Avec le mode Architect, Mia-Generation fournit un environnement complet pour développer vos propres règles de génération de code ou adapter des règles existantes |
|
|
Structure d'un projet de génération |

| Un générateur est défini dans un projet.
Les scripts (templates ou macros Java) sont définis dans des packages, pour augmenter la modularité et faciliter la réutilisabilité.
Les scénarios permettent de lancer rapidemment des générations complexes. |
|
|
Templates |

| Le moteur de génération est basé sur le principe des templates.
- En noir : le texte généré tel quel.
- En vert les parties variables remplacées au moment de la génération en fonction de l'objet du model sur lequel le template est évalué.
|
|
|
Complétion automatique |

| Une complétion automatique est disponible pour accéder aux scripts de génération disponibles |
|
|
Préservation du code manuel |

| Délimiteurs de code manuel.
Chaque template peut définir des délimiteurs de code utilisateur (BeginTag et EndTag). Le générateur gardera le code manuel de l'utilisateur entre chaque génération. |
|
|
Macros Java |

| Les règles de génération qui ne peuvent être écrites avec un template (manipulation de chaîne de caractères, navigation dans le modèle, ...) peuvent être écrites directement en Java standard
Mia-Generation fournit également une colorisation syntaxique et la complétion automatique sur les APIs Java |
|
|
Points d'arrêt |

| Il est possible de poser un point d'arrêt sur un script et de le paraméter pour un objet particulier du modèle |
|
|
Références croisées |

| Vous pouvez demander les références entre les scripts : - Qui m'appelle ?
- Quels scripts j'appelle ?
- Où sont définis les scripts appelés ?
- etc...
|
|
|
Navigateur de modèles |

| Un navigateur permet de naviguer aisément dans le modèle et de visualiser tous les liens entre les objets ainsi que chacune de leurs propriétés |
|
Traces de génération |

| Pour comprendre le déroulement d'une génération, une trace permet de visualiser chaque étape de génération : - Le texte du script exécuté
- l'objet sur lequel le script a été évalué
- le fragment de code généré
Depuis la trace il est possible d'accéder directement à la fenêtre d'édition du script ou au browser de modèle |