PostNuke
ModuleStudio est un logiciel de génération de code permettant de créer automatiquement des modules complets pour Postnuke. Sa vision est totalement originale dans le monde du php, d'une part parce qu'elle est totalement orientée objet, d'autre part parce que le logiciel s'inscrit dans le courant des logiciels MDA, des logiciels qui génère tout votre code source à partir d'une représentation de son diagramme de classe en UML.

ModuleStudio se présente sous la forme d'une version allégée du logiciel Eclipse,dédiée à la génération de code. Notez que comme Eclipse est codé en java, il est multi-plateforme et vous pourrez aussi bien l'utiliser sous windows que sous linux.
Dans la première partie, une faute a volontairement était commise , en effet, tout le module n'est pas généré à partir d'un diagramme de classe, en effet, seul la partie persistance peut être généré de cette manière ( la partie qui gère l'accès à la base de donnée pour faire simple), maintenant il faut se dire que dans un module, il y a aussi une couche présentation (ou couche graphique) qui peut être aussi personnalisé avec ModuleStudio.

Pour être plus clair, et comme une image vaut mille mots, voila une présentation d'une logiciel en quelques prises d'écran, pour un exemple simple de gestion clients.

Tout d'abord, voila la définition globale du projet

- data layer (couche DAO): gère l'accès à la base de donnée (fonction de base de création, mise à jours, effacement)
- presentation layer (couche présentation) :gère la partie graphique
- logic layer (couche métier) : couche métier qui gère les échanges entre la partie graphique et la partie DAO
- process layer : modélise différentes vues du logiciel et leur interaction selon le type d'acteur concerné (admin ou utilisateur majoritairement). Pour faire simple, c'est une représentation des cas d'utilisation de l'application montrant l'interaction de l'utilisateur/administrateur entre les différentes pages (notez que des objets Ajax sont présents)

generation-code.jpg

Par la suite, seul la couche DAO et sa représentation sous forme d'un diagramme de classe sera étudié, libre à vous d'aller voir le reste.

model-uml.jpg

Tout ceux qui connaissent déjà Pagesetter et sa gestion de type et de relation ne seront pas dépaysées puisque le principe appliqué est le même, vous modéliser vos objets métiers (vos "type" en langage pagesetter) et leurs relations. Sachant que vous avez le droit aux relations unidirectionnels ( vive la simplicité ^^), pour le reste si vous connaissez le fonctionnement des diagrammes de classes, tout ira pour le mieux ^^.

Notez que order(1:n) veut dire que pour un "customer", vous pouvez avoir n "orders" (suivez le sens de la flèche)

Vous pouvez télécharger la béta (alpha ?) de ModuleStudio et les exemples gratuitement sur
télécharger ModuleStudio

Commentaires

Seuls les utilisateurs enregistrés peuvent ajouter un commentaire. S'enregister/S'identifier