Ok

En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de cookies. Ces derniers assurent le bon fonctionnement de nos services. En savoir plus.

20/11/2004

DBDesigner : Modèle de Conception de Données (MCD)

Un autre outil indispensable pour modéliser les bases de données en Mysql : DBDesigner. Il ne supporte que MySQL mais il le fait bien. Il possède plusieurs atouts à son arc :

  • Export des diagrammes en png de la structure des tables
  • Génération de rapports avec la structure des tables
  • Reengineering des bases de données. (Pour l'instant je ne l'ai vu dans nul autre projet opensource) ; c'est-à-dire qu'il se connecte à une base de données et permet d'extraire les informations afin de "dessiner" les tables
  • Génération du code sql. Sur ce point je serai plus critique car les clefs étrangères ne sont pas correctes. Ca permet de faire 80% du travail ce qui est déjà pas mal
mysql.pngA côté de ça on a l'incontournable phpMyAdmin qui ne cesse de s'améliorer et les outils de Mysql : Mysql Control Center et MySQL Administrator qui donne plus d'informations sur l'état du serveur.

18/11/2004

Poseidon : conception des classes - UML

poseidon.pngAutre logiciel à posséder lorsqu'on souhaite concevoir des applications ; c'est un outil de modélisation UML. (L'article en français n'existe pas encore). J'utilise pour l'instant l'outil Poseidon de la société GentleWare.

Le projet Poseidon est issu du projet opensource ArgoUML dont la licence BSD permet aux extensions d'être commercialisé par les entreprises. La différence entre les deux se situe plus en terme d'ergonomie qu'autre chose lorsqu'on fait du développement PHP. En effet pas de génération de code en PHP. L'outil permet plus de réfléchir à la conception et est un bon moyen pour enrichir la documentation du projet via des exports de diagrammes.

Un autre intérêt de l'outil est de pouvoir exporter les diagrammes au format png et le support du format xmi (format d'échange de métadonnées). Ainsi si l'envie me prenait de changer d'outil, le travail réalisé ne devrait pas être à refaire.... J'avais essayé il y a 1 an de réinjecter le fichier xmi dans ArgoUML et le résultat n'était pas probant. Dans Rational Rose cela fonctionnait bien cependant. Je n'ai pas réessayé depuis mais je pense que des progrès ont été fait, du moins je l'espère car c'était une des promesses du format xmi : échanger des métadonnées entre différentes applications ;-)

Dernier point important ça fonctionne aussi bien sous Windows que sous Linux ;-) ce qui est assez rare.

17/11/2004

Gestion des versions du code source : Eclipse

Lorsqu'on souhaite déployer des applications ou travailler en équipe, il est obligatoire d'avoir un système de gestion du code source. CVS (Concurrent Versions System) est un outil stable et robuste que nous utilisons au sein de BlogSpirit.

Son utilisation peut paraître difficile en ligne de commande. Cependant utilisé dans un logiciel avec une interface graphique tel qu'Eclipse et alors la productivité de l'équipe s'en voit améliorée.
Cela fera bientôt plus de 2 ans que mon équipe travaille avec Eclipse et cela nous a servi bien des fois.

eclipse.png

Bien qu'Eclipse est surtout connu pour être un éditeur de code JAVA, il possède dans sa version 3.0 un plugin installé par défaut ssh2, qui permet de faire des connections distantes sécurisées. Pour l'instant je n'ai pas trouvé de meilleur outil. En effet le repository doit être accessible à travers le réseau Internet afin de permettre des connections au bureau ou à domicile.

Un autre avantage d'Eclipse, c'est la gestion performante des tags et branches. On parle de "tag" dans CVS, lorsqu'on fait un snapshot à une date t. Il est possible ainsi de récupérer un ensemble de fichiers à cette date t. On parle de "branche" lorsqu'on fait évoluer 2 versions d'un code. La branche HEAD est celle qui est toujours en développement alors que la branche est utilisée pour corriger des bugs dans un code source sans pour autant intégrer de nouvelles fonctionnalités. Ainsi BLOGSPIRIT, se trouve sur la branche V1_1 et nous pouvons à tout moment corriger des bugs sans qu'il soit nécessaire de rajouter des fonctionnalités qui seront intégrées dans une nouvelle branche ;-)

Pour l'instant Eclipse n'est pas l'éditeur pour coder le PHP car trop lent par rapport à Ultraedit. Cependant il possède des plugins qui sont très intéressants en particulier la visualisation des diagrammes UML : Omondo EclipseUML.

Un outil à suivre de très près et qui évolue régulièrement avec des plugins à n'en plus finir : http://eclipse-plugins.2y.net/