génération documentation (Doxygen + Graphwiz) [Forums - Astuces]
génération documentation (Doxygen + Graphwiz) [Forums - Astuces]
Pseudo Pass se souvenir de moi     Créer un compte
ARTICLES et TELECHARGEMENTS ~ FORUMS ~ LIENS  
 
             
 
Recherche
 
   
 

Parcourir ce sujet :   1 Utilisateur(s) anonymes





génération documentation (Doxygen + Graphwiz)
Pilier de la communauté
Inscrit:
13/10/2005 10:06
De haute-savoie (74)
Messages: 1162
Hors Ligne
Bonjour,

Dans l'optique d'avoir une chaine de développement complète et répondant à certaines exigences normatives, j'ai commencé à rassembler une suite d'outils qui viennent compléter le compilateur/debugger (Codewarrior dans cet exemple, mais identique pour Eclipse + compilateur tiers). J'ai l'ambition d'en faire des tutoriaux une fois terminé.

Je souhaiterai donc ajouter :
- un outil pour gestion de la documentation
- un outil pour la gestion des révisions et l'archivage (SVN, CVS, ...)
- un outil de tracking de bug
- des outils de vérification et de test du code (PC-lint, etc...)


La première étape que j'ai démarré c'est la gestion de la documentation.

J'ai installé Doxygen + GraphWiz et le plugin Eclox grace à l'article d'Erich Styger ici : http://mcuoneclipse.com/2012/06/25/5- ... ygen-graphviz-and-mscgen/
L'installation et le fonctionnement sont très simples bien que l'article ne soit pas un tutorial. Il manque quelques explications mais c'est une très bonne base.

Doxygen permet de générer une documentation automatiquement dans plusieurs formats (HTML, HTML compressé (fichiers d'aide Windows), PDF, Latex, RTF, MAN). GraphWiz permet de faire depuis doxygen les graphiques des dépendances, des appels de fonction, etc... C'est extra !

Doxygen scanne le code à la recherche des balises qui lui sont nécessaires. Au début je pensais que ce serait fastidieux, mais en fait il y a très peu de balises à ajouter et il y a plusieurs astuces de saisie semi-automatique lorsque doxygen est intégré à Eclipse (CW ou pas).
En gros cela revient à prendre le coup de main de démarrer ses commentaires par /** au lieu de /*. C'est pas la mort !

Et finalement comme les entêtes de fichier ou fonctions sont toujours les mêmes, on peut continuer à faire du copier collé !

Afin de faire une documentation de qualité, on n'oublira pas d'insérer une main page avec un peu de blabla pour décrire le projet d'une part mais aussi pour structurer la documentation. Mais là aussi cela ne va pas chercher bien loin. Et au final cela a l'avantage de générer une documentation parfaitement à jour, cela remonte des warning si on a pas bien documenté (incohérence sur les paramètres ou oublis de documenter des fonctions, etc), et cela évite d'avoir à générer doc en partant de 0. Il y a donc un gain de temps important à la clé.

Tout cela fera l'objet d'un tuto ultéieurement, mais je voulais partager ceci avec ceux qui ne connaissaient pas encore !

Cordialement
Stéphane

Posté le : 04/09/2013 13:51
Transférer la contribution vers d'autres applications Transférer


Re: génération documentation (Doxygen + Graphwiz)
Pilier de la communauté
Inscrit:
13/10/2005 10:06
De haute-savoie (74)
Messages: 1162
Hors Ligne
Procédure

* Télécharger et installer Doxygen : http://www.stack.nl/~dimitri/doxygen/download.html
Sous windows choisir la version msi
* Télécharger et installer Graphviz : http://www.graphviz.org/Download..php
* Lancer CW ou Eclipse. Aller dans Help\Install new software\ et ajouter dans la liste des sites l'URL http://download.gna.org/eclox/update. Cela afficher les plugin Eclox. Dérouler la liste et décocher Eclox Hot pour ne laisser que Eclox puis valider. cela installe Eclox qui redémarre CW.
* Aller dans Windows\Prererences\C/C++\Editor et dans Workspace Default, il faut sélectionner Doxygen

L'installation est terminée.

* Dans votre projet, il faut créer le fichier de configuration de Doxygen qui s'appelle un Doxyfile. Il faut faire File\New\Other\Doxyfile
Modifier les paramètre selon votre convenance mais on peut déjà :
- ajouter le nom du projet
- Sélectionner HTML with frames and navigation tree
- cocher with search function
- sélectionner Diagram To Generale \ Use dot tool from the GraphViz package
- ajouter le répertoire \source de votre projet
- cocher Scan recursively
- Sélectionner Mode \ all entities
- Sélectionner Optimize results for C (ou C++)

Ensuite il n'y a plus qu'à entrer vos balises pour que la documentation soit générée par doxygen. Il y a 10 balises qui se courrent après au max et il existe plein de tuto sur le net pour utiliser doxygen. C'est très épuré donc rapide de prise en main.
Sans rien faire, sur un projet existant, on peut déjà générer la documentation qui montrera déjà tous les graphs de dépendance, d'appel, etc...

C'est rapide et je ferai un tuto plus élaboré par la suite.


Stéphane

Posté le : 04/09/2013 14:18
Transférer la contribution vers d'autres applications Transférer


Re: génération documentation (Doxygen + Graphwiz)
Pilier de la communauté
Inscrit:
27/09/2005 18:26
Messages: 794
Hors Ligne
Salut Stephane !

Parfait comme petite présentation qui attisera la curiosité de ceux qui ne connaissent pas cet outil

Je confirme en tout cas tout son intérêt pour l'avoir deja utilisé. C'est vraiment puissant, ca marche avec pleins de langages, pas seulement le C ou le C++, et surtout, c'est gratuit !

Je rajoute enfin que cela fonctionne aussi en dehors d'Eclipse, et que vous pouvez donc l'utiliser sur d'autres types de projet.

A+
Joël

Posté le : 04/09/2013 22:39
En Savoie, on a pas de pétrole, mais on a des Diots !
Transférer la contribution vers d'autres applications Transférer


Re: génération documentation (Doxygen + Graphwiz)
Pilier de la communauté
Inscrit:
23/10/2005 11:40
De Aix les Bains (73)
Messages: 1913
Hors Ligne
Salut

La mienne est attisée...
L'idée me plait beaucoup, sur que je vais l'utiliser.
En plus là je bosse sur une projet en commun avec Yvan, ce sera plus facile de lire ce que fait telle ou telle fonction en HTML bien propre et structuré que au milieu du code en vert tout vilain.
Idem pour une todolist commune.
Je teste ça dés e j'ai sorti la tête de l'eau.

Merci

Posté le : 09/09/2013 10:40
Mieux vaut marcher dans la bonne direction que courir dans la mauvaise
Transférer la contribution vers d'autres applications Transférer



 Haut   Précédent   Suivant



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Powered by XOOPS© The XOOPS Project
Contacter les administrateurs

génération documentation (Doxygen + Graphwiz) [Forums - Astuces]