UML2PHP5 version 0.3

Posté par  . Modéré par jerome.
Étiquettes :
0
23
déc.
2003
PHP
UML2PHP5 est un plugin destiné à se greffer sur l'application de dessin de diagramme Dia. Il permet de générer automatiquement le squelette du code PHP des classes du diagramme.

Le modèle objet de PHP5 se rapprochant de plus en plus de celui de java par exemple, il devenait urgent de fournir à la communauté un outil de design à la hauteur des outils disponibles pour d'autres langages.

Parmis les caractéristiques de UML2PHP5, on trouve :

* fichier de configuration permettant de controler la génération de code ;
* génération d'un fichier par classe et par interface ;
* génération approximative du corps des classes ;
* gestion des classes et méthodes abstraites ;
* gestion des membres statiques ;
* gestion des implémentations multiples.

UML2PHP5 est sous license GPL.

Aller plus loin

  • # Re: UML2PHP5 version 0.3

    Posté par  . Évalué à 4.

    D'ailleurs je profite de cette news pour lancer un appel à URL ( si l'on peut dire ) , mis à part cette initiative , quid des liens entre UML et PHP dans les autres logiciels de developpement...

    On peut citer :
    --> Eclipse, l'IDE libre de IBM, a un module PHP , des modules UML mais aucun lien entre eux... Omondo ( http://www.omondo.com(...) ) ouvrirait-il son API pour qu'on puisse le faire ?
    --> Umbrello sous KDE qui propose une génération de code PHP ( http://umbrello.sourceforge.net(...) )

    Mais si l'on regarde les approches actuelles autour de C# et Java, il faut que le tout soit integrer dans un IDE complet, où l'on accede au modele et au code, de facon iteractive, l'un modifiant l'autre etc...

    Pour Java et sous Eclipse ca marche tres bien..

    Ce genre d'outil serait super profitable à PHP !
  • # Re: UML2PHP5 version 0.3

    Posté par  . Évalué à 2.

    Tiens tiens, je vais essayer de ce pas dia.
    Une bonne occasion de ce remettre à UML et pouvoir générer des classes php.

    Vous pensez quoi de dia ? (j'ai pas mal utilisé argo de mon côté)
    • [^] # Re: UML2PHP5 version 0.3

      Posté par  (site web personnel) . Évalué à -3.

      Comme gimp, inutilisable a cause d'une interface de merde
    • [^] # Re: UML2PHP5 version 0.3

      Posté par  . Évalué à 1.

      Je l'ai un peu utilise, surtout pour de petits diagrammes, pas pour de l'UML.. C'etait sympa. Le seul probleme residait dans le fait que la sauvegarde au format PSTricks merdait et necessitait le changement manuel du code genere .. A part ca ..
    • [^] # Re: UML2PHP5 version 0.3

      Posté par  (site web personnel) . Évalué à 2.

      Que c'est pas fait pour être un IDE. Et que c'est déjà un des pires éditeurs UML qui existent (normal, à la base c'est fait pour faire des diagrammes quelconques, pas spécifiquement de l'UML).
    • [^] # Re: UML2PHP5 version 0.3

      Posté par  . Évalué à 1.

      Ça fait un moment que je ne l'ai pas utilisé, mais ce dont je me souviens le mieux, ce sont ses plantages fréquents. Je m'en suis servi il y a 2 ou trois ans pour illustrer des graphes potentiel-tâche, c'était passablement énervant.
      • [^] # Re: UML2PHP5 version 0.3

        Posté par  . Évalué à 1.

        Je pense que tu peux lui donner une seconde chance!

        Les dévelopeurs de dia sont (tres) peu nombreux (patchs welcome!). Ils ont opéré récement à de nombreuses avancées techniques dans le code qui devraient permettre l'ajout de fonctionalités attendues, et au passage des cycles de dévelopement plus rapides.
        • [^] # Re: UML2PHP5 version 0.3

          Posté par  . Évalué à 1.

          Parfaitement d'accord avec toi. Dia s'améliore grandement. Je l'utilise pour gérer une base de données d'une vingtaine de tables avec des liens partout. Je me sert pour celà d'UML et de tedia2sql qui convertit les schémas dia en requètes SQL (mysql, oracle, postgree...). On peut exporter sous une dizaine de formats différents comme eps, png, dxf, tex...

          Essayez le ou ressayez le, vous ne serez pas déçu
  • # Dia2Postgres

    Posté par  (site web personnel) . Évalué à 4.

    J'en profite égalemment pour parler d'un projet méconnu,
    bien que référencé sur le site ofiiciel de Dia et qui utilise UML,
    c'est Dia2Postgres[1]: il s'agit d'un script Perl capable de générer à partir d'un schéma UML Dia directement
    à la fois les scripts SQL (triggers compris) pour Postgres mais aussi les classes PHP correspondantes
    pour accèder aux données via des méthodes objets.

    [1]: http://www.nocternity.net/index.php/projets/dia2postgres(...)
    --
    Raphaël SurcouF
    • [^] # Re: Dia2Postgres

      Posté par  . Évalué à 3.

      En fait il y a une multitude de projet d'import/export pour dia.

      En ce qui concerne les bases de données, il me semble que Tedia2sql est le plus avancé: http://tedia2sql.tigris.org/(...) Il support l'export vers PostgreSQL, MySQL (InnoDB), Oracle,Sybase, Ingres, MS-SQL Server, or IBM DB2.

      Pour la génération de code, allez voir aussi Autodia, qui génère du Perl Python PHP Java C++ Torque (XML DB schema) DBI (perl database interface handles) SQL. http://www.droogs.org/autodia/(...)

      D'autres sur la page de Dia http://www.lysator.liu.se/~alla/dia/(...)
      • [^] # Re: Dia2Postgres

        Posté par  . Évalué à 1.

        Je la refais dans le bon ordre:

        Autodia génère des diagrammes (.dia), à partir de code au format...
    • [^] # Re: Dia2Postgres

      Posté par  (site web personnel) . Évalué à 4.

      C'est en effet très intéressant mais je voudrais expliquer ici les limites des générateurs de code.

      Se servir d'un générateur de code nécessite un apprentissage qui ne dispense pas de celui de postgresql, de SQL, de la connaissance des bases de données et de la programmation en général.
      Tant que le TODO du générateur contient des choses utiles, il me parait évident qu'il faudra tôt ou tard reprendre le code à la main. Dans ces conditions, autant commencer tout de suite avec son éditeur favori et éviter l'apprentissage du générateur.

      J'ai vu beaucoup de générateurs de code apparaitre aussi bien sur mainframe que sur PC. Chaque fois, l'engouement du départ a fait place à un certain désenchantement, en particulier lorsque le générateur n'est plus supporté. C'est souvent le cas dans les grandes entreprises où les grosses applications doivent vivre très longtemps.
      Un autre inconvénient des générateurs est de générer une profusion de lignes de code. J'ai pu constater qu'un générateur pouvait donner dix fois plus de lignes que ce qui était nécessaire.

      Faut-il jeter les générateurs de code aux orties ? Non, je ne le crois pas car ils peuvent rendre de grands services. Pour être intéressants, il faut qu'ils atteignent un très haut niveau de performance, sinon ils ne sont que de beaux exercices de style.

      Oui aux générateurs de générateurs de code, mais :
      - à utiliser avec modération,
      - se conformer aux précautions d'emploi,
      - éviter les contre-indications.
      • [^] # Re: Dia2Postgres

        Posté par  (site web personnel) . Évalué à 1.

        Pas tout à fait d'accord avec toi.

        Je fais pas mal de Java et des générateurs de code comme XDoclet sont à utiliser sans AUCUNE limitation.

        http://about.me/straumat

      • [^] # Re: Dia2Postgres

        Posté par  . Évalué à 5.

        Je partage tout a fait ton experience.

        > - à utiliser avec modération,

        a part les prototypes , je ne vois pas d'autre usage "moderé"

        > - se conformer aux précautions d'emploi,

        mouais, encore faut il que le realisateur ait redigé une "precaution d'emploi" ce qui est rarement le cas. non par negligeance mais parce qu'il ne peut pas prevoir.

        - éviter les contre-indications.

        idem !

        le probleme est le suivant :
        - les manager voient qu'avec ces outils même les p'tit jeunes sans bcp d'experience peuvent realiser des application tres rapidement .
        Pour eux c'est tout benef : pas cher et rapide.
        -les programeurs experimentes qui ont eu a reprendre les delires pondus par lesdit p'tits jeunes et leur jouet, ne veulent pas de ces générateurs. Il veulent le faire a la main.
        Tres mauvais pour le manager : personnel tres cher + temps de realisation tres long

        C'est tres difficile de faire comprendre a un manager que ce qu'on economise maintenant on le perdra plus tard en maintenance et couts exorbitant de modifs. Le manager , il s'en fout. Il ne sera plus la , il aura eu une promo pour avoir realisé le soft dans les temps impartis avec le budget minimum.
        • [^] # Re: Dia2Postgres

          Posté par  . Évalué à 1.

          > les p'tit jeunes sans bcp d'experience peuvent realiser des application tres rapidement

          Personnellement, j'ai plutôt eu ce genre expérience avec des "p'tits vieux" qui, proches de la pré-retraire, ne voient pas d'un bon oeil le fait de devoir mener une réflexion solide menant à un programme tout aussi solide. Les outils de génération automatique de code sont pour eux l'échapatoir leur permettant de réaliser le boulot qu'on leur a attribué, cela au moindre effort.

          Pour modérer mes propos, je précise tout de même que ceux à qui je pense en disant cela sont des gens formés sur le tas, du temps où les formations adéquates n'existaient pas encore. Ils ont certes de l'expérience, du fait de leur âge, mais aucun bagage digne de ce nom.

          Tout cela pour dire qu'il n'y a pas que les "p'tits jeunes" qui utilisent les générateurs, ni que des "p'tits vieux" d'ailleurs. Il faudrait veiller à ne pas généraliser aussi facilement.
          • [^] # Re: Dia2Postgres

            Posté par  . Évalué à 1.

            Moi aussi je vois bien des gens bien tranquilles dans leur boulot de code connu, pour qui une nouvelle techno serait 1e une baisse de productivité par rapport au fait qu'ils connaissent leur métier; 2e une remise en cause de leur conception (de l'écran vert sur fond noir à l'écran graphique, du procédural à l'objet); 3e un effort assez long pour arriver dans un univers avec beaucoup plus de visibilité et de concurrence.
            Alors ils tentent les générateurs de code en trouvant que c'est une expérience et ils regardent .net avec délice parce que c'est tout intégré. Bref l'outil fait un grand pas vers eux - alors que c'est vrai l'outil ne fait pas un pas vers toi quand on parle d'aller vers les solutions non packagées type php/python/java/perl etc etc...
            Et ils considèrent que faire de l'UML faire remplacer le code.

            ok pour un jour de noël je suis pas charitable. Mais on peut retourner le propos c'est eux qui sont pas charitables avec moi..
  • # Re: UML2PHP5 version 0.3

    Posté par  . Évalué à 1.

    Une petite question. Un équivalent pour PHP4 existe-il ?
    Ba oui, php5, c'est pas encore sorti après tout... Sinon, le code fourni peut il être facilement repris pour php4 ?

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.