Acceleo feedback
May 29, 2007 2:34 pm WisssAs Jérôme Benois made, it’s time to give feedback on Acceleo (and I’ve been asked several times by Cédric for doing it). The french version of this post is at the end.
I discovered MDE during a school project on MIA Generation. We had to generate a dynamic XML reader/writer for a given XML schema. I’ve immediatly noticed how fun it could be to generate database persistence for a website. The year after, Cédric has been hired in Obeo to work on Acceleo so I couldn’t stop playing with MDE principles ![]()
During the first months in Makina Corpus, I’ve spent my time on Wisss. PHP is the technology I know the most and probably the worst used, that’s why I decided to develop a generator to get a secure and well architectured code. A pros for Acceleo is its basement on Eclipse. It provides a complete environment for MDE with EMF (to define a DSL) and GMF (to define a user-friendly modeler). It’s quick to understand and problems you encounter are more due to modelisation or architecturing than the tool Acceleo. Even if I or some other users can have more feature requirements, Acceleo manage very well to do what it is intended for : generate code.
I’ve not yet a working project but it’s only because of me
I’m refactoring my first prototype since I’ve discovered new shortcuts and tricks in Acceleo (how inheritance work better than I thought for instance).
For the near future, I hope to have a first working version of Wisss, to go on working with Acceleo, and to go deeper in Eclipse framework to be able to extend Acceleo, EMF or GMF. My wish is now to make PHP developpers consider MDE, which is an other approach (and more efficient to my mind) than pseudo generators and pseudo introspection provided by current frameworks.
French version
J’ai découvert le MDE pendant un projet scolaire sur MIA Generation. Nous devions générer un lecteur/écrivain XML dynamiquement en fonction d’un schéma XML donné. J’ai immédiatement remarqué à quel point ca serait intéressant de pouvoir générer la persistence en base pour un site. L’année suivante, Cédric a été embauché chez Obeo pour travailler sur Acceleo, je ne pouvais pas arrêter de jouer avec le MDE ![]()
Pendant mes premiers mois à Makina Corpus, j’ai passé du temps sur Wisss. PHP est la technologie que je connais la mieux et probablement la plus mal utilisée, c’est pourquoi j’ai décidé de développer un générateur de code sécurisé et bien architecturé. Un des avantages d’Acceleo est qu’il est basé sur Eclipse. Cela permet d’obtenir un environnement de MDE complet avec EMF (pour définir un DSL) et GMF (pour définir un modeleur ergonomique et attrayant). Il est rapide à prendre en main et les problèmes rencontrés sont plus dus à la modélisation ou à l’architecture que l’ont met en oeuvre qu’à l’outil Acceleo. Même si moi ou d’autres utilisateurs voudraient bien quelques fonctionnalités en plus, Acceleo remplit très bien la tâche pour laquelle il a été conçu : générer du code.
Je n’ai pas encore un projet fonctionnel mais c’est uniquement ma faute
Je suis en train de repenser mon premier prototype depuis que j’ai découvert des nouvelles techniques dans Acceleo (notamment à quel point l’héritage foncitonne bien).
Dans un futur proche, j’espère avoir une première version de Wisss qui marche, pour continuer à travailler avec Acceleo, et approfondir le framework Eclipse pour être capable d’étendre Acceleo, EMF ou GMF. Mon souhait maintenant est de faire prendre conscience du MDE aux developpeurs PHP, ce qui est une autre approche (plus efficace à mon avis) que les pseudo générateurs et la pseudo introspection fournis par les frameworks actuels.
