Générer un graph pseudo UML PHP

10/09/2008

Je vous ai parlé de mon petit outil, GTU (Graphlanguage To UML), qui permet de définir un modèle UML basique et de le reproduire en graph via Graphviz. Je me suis amusé à faire un autre script qui génère du GTU depuis PHP… En passant j’ai corrigé et amélioré GTU pour qu’il gère les classes abstraites, les interfaces…

Bref, hier soir j’ai tenté de parser des répèrtoires de Copix, notamment le core complet ce qui génère un graph très lourd, et simplement des paquets comme le répèrtoire “db”. Le résultat est assez interessant:

Cliquez ici pour voir la version large… sachez qu’à la base le diagramme se trouvait en SVG et que je l’ai simplement converti.

Bref, le scripts GTU (perl) est ici: -http://www.metal3d.org/tools/gtu-0.1.pl Pour l’utiliser:

mv gtu-1.0.pl gtu
chmod +x gtu-1.0.pl
./gtu fichier.gtu <FORMAT DE SORTIE, par exemple svg, png, pdf...> [optionnellement: LR ou BT ou TB ou RL pour changer la disposition du graph]

GTU gère les classes de manière simple, créz un fichier test.gtu:

[classA]
//classe abstraite
+ varpublic
- varprivée
\# varprotégée

[(A)classB]
//classe abstraite
+ varpublic
- varprivée
\# varprotégée

[(I)classC]
//Interface
+ varpublic
- varprivée
\# varprotégée



[(IA)classD]
//Interface abstraite ????
+ varpublic
- varprivée
\# varprotégée


[packageA::(I)classE]
//Interface dans un package nommé packageA
+ varpublic
- varprivée
\# varprotégée


#Liaisons:
#héritage
classC --> classB

#implémentation
classA --> classC 


#point d'entrée
Utilisateur => classA

En ce qui concerne mon parser PHP pour faire du reverse engeneering, je vous le passerai par la suite, pour le moment il est encore plus imaintenable que gtu :)

Ça peut vous intéresser aussi


Petit outil UML

Je vous ai parlé de MeriseAcide, un petit outil bien ...


vim est un IDE PHP

Après pas mal de temps passé sur Eclipse, la lourdeur ...


Je compile tu compiles

Lorsque l’on travaille sur Linux ou Unix en général,...


Optimisations Copix PHP et Apache

Les temps de réponse… Dieu sait à quel point cela ...

Merci de m'aider à financer mes services

Si vous avez apprécié cet article, je vous serai reconnaissant de m'aider à me payer une petite bière :)

Si vous voulez en savoir plus sur l'utilisation de flattr sur mon blog, lisez cette page: Ayez pitié de moi

Commentaires

Ajouter un commentaire

Ajouter un commentaire

(*) Votre e-mail ne sera ni revendu, ni rendu public, ni utilisé pour vous proposer des mails commerciaux. Il n'est utilisé que pour vous contacter en cas de souci avec le contenu du commentaire, ou pour vous prévenir d'un nouveau commentaire si vous avez coché la case prévue à cet effet.