DSL Factory

La communauté francophone autour des DSL Tools, et de l'extensibilité Visual Studio
The French-speaking community about DSL Tools and Visual Studio Extensibility
Bienvenue à DSL Factory Identification | Inscription | Aide
Accueil Blogs Forums Photos Fichiers Roller

Lab DSLTools - Partie 3

Détails du fichier
Téléchargements: 163 Taille du fichier: 1.2MB
Message écrit par: Jean-Marc Consultations: 622
Ajouté le: jj 10 Dec 2006

L’objectif de ce Lab. est de créer un langage spécialisé avec les DSL Tools et de le personnaliser en utilisant du code basé sur le SDK de Visual Studio. Les DSL Tools sont d’autant plus intéressants que vous voudrez créer un langage vertical, propre à votre métier, et générer à partir des modèles qu’il manipule, du code pour votre Framework métier. Néanmoins, dans le cadre d’une formation, il est plus difficile d’assurer que tout le monde connaisse les entités métier manipulées et le Framework ciblé. C’est pourquoi nous nous contenterons, dans cet exemple, d’un DSL horizontal, c'est-à-dire technique, que nous travaillerons sous différents aspects et qui nous permettra de naviguer à travers les possibilités de DSL Tools.

 

Autant qu’une formation, ce document tente aussi de présenter une démarche pour aborder la conception de DSL

 

La démarche suivie dans ce Lab. est la suivante :

 

1.      Création d’un DSL à partir d’un modèle « Vide » de DSL. (45 étapes : ce chapitre)

 

2.       Création d’un méta-modèle pour des automates d’états-fini : ce méta-modèle comporte les notions de StateMachine, State, et Transition. Dans un premier temps nous considérerons que des états n’ont pas de sous-états (27 étapes)

 

3.       Spécification d’une syntaxe graphique à notre DSL (51 étapes)

 

4.       Test de notre DSL dans l’instance expérimentale de Visual Studio.

 

5.       Amélioration de l’IHM du DSL.

 

6.       Ajout de règles de cohérence au modèle

 

7.       Ajout de règles de validation du modèle

 

8.       Création d’un générateur de code ciblant un Framework pour l’implémentation d’automates d’états-finis.

 

9.       Test de notre DSL sur quelques exemples amusants.

 

10.  Ajout d’un setup pour distribuer notre DSL

 

Commentaires
Aucun commentaire n'existe pour ce fichier.
Propulsé par Community Server, par Telligent Systems