Doxygen
Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.
Doxygen
Développeur Dimitri van Heesch et contributeurs
Dernière version 1.5.4 (le 27 octobre 2007)
Environnement Mac OS, UNIX, Windows (Windows est une gamme de systèmes d'exploitation produite par Microsoft, principalement destinées aux machines compatibles PC. C'est le remplaçant de MS-DOS. Depuis les années 1990, avec la sortie de Windows 95, son succès...), BSD GNU/Linux
Type Générateur de documentation
Licence GPL
Site Web (Un site Web est un ensemble de pages Web hyperliées entre elles et mises en ligne à une adresse Web. On dit aussi site Internet par métonymie, le...) www.doxygen (Doxygen est un logiciel informatique libre permettant de créer de la documentation à partir du code source d'un programme. Pour cela, il tient compte de la...).org

Doxygen est un logiciel (En informatique, un logiciel est un ensemble d'informations relatives à des traitements effectués automatiquement par un appareil informatique....) informatique (L´informatique - contraction d´information et automatique - est le domaine d'activité scientifique, technique et industriel en rapport avec le traitement automatique...) libre permettant de créer de la documentation à partir du code source (Le code source (ou les sources voire le source) est un ensemble d'instructions écrites dans un langage de programmation informatique de haut niveau, compréhensible par...) d'un programme. Pour cela, il tient compte de la grammaire du langage dans lequel est écrit le code source, ainsi que des commentaires s'ils sont écrits dans un format particulier.

Le code de Doxygen a été écrit en grande partie par Dimitri van Heesch.

Présentation

Doxygen est la contraction de dox (docs, abréviation anglaise de documents) et de gen (generator), générateur de documentation.

Doxygen est capable d'analyser des fichiers sources écrits dans les langages C, C++, Java, Objective C, Python, IDL et dans une certaine mesure PHP (PHP (sigle de PHP: Hypertext Preprocessor), est un langage de scripts libre principalement utilisé pour produire des pages Web dynamiques via un serveur HTTP, mais pouvant également fonctionner comme n'importe quel langage...), C# et D.

La documentation peut être générée dans l'un ou plusieurs des formats suivants : HTML (compressé ou non), LaTeX (LaTeX est un système logiciel de composition de documents créé par Leslie Lamport. Plus exactement, il s'agit d'une collection de macro-commandes destinées à faciliter l'utilisation du...), RTF, PostScript, PDF avec hyperliens, et prochainement XML (en cours de développement).

Intérêt

En permettant l'intégration de la documentation directement dans le code sources, Doxygen permet de favoriser la cohérence entre la documentation et le code et de systématiser le comportement des développeurs afin qu'ils documentent le code qu'ils produisent.

Il est également possible d'extraire de la documentation à partir d’un code source non documenté au préalable, ce qui peut faciliter la compréhension d'un programme dont le code est compliqué.

De nombreux projets, tels que KDE, utilisent Doxygen pour créer la documentation de leur API. KDevelop (Kdevelop est un environnement de développement intégré (IDE) pour KDE.) intègre le support de Doxygen. De nombreux éditeurs de texte proposent des modes ou des scripts pour faciliter l'écriture des commentaires Doxygen et la génération de la documentation.

Les informations suivantes peuvent être extraites des sources :

  • Prototype et documentation des fonctions, qu'elles soient locales, privées ou publiques, etc.
  • Liste des fichiers inclus
  • Documentation des structures de données (Dans les technologies de l'information (TI), une donnée est une description élémentaire, souvent codée, d'une chose, d'une transaction d'affaire,...)
  • Prototype et documentation des classes et leur hiérarchie
  • Différents types de graphes : diagrammes de classe, de collaboration, d'appels, d'inclusion, etc. Pour générer certains de ces diagrammes, l'outil (Un outil est un objet finalisé utilisé par un être vivant dans le but d'augmenter son efficacité naturelle dans l'action. Cette augmentation se traduit par la simplification des actions entreprises, par une plus grande...) gratuit Dot est nécessaire.
  • Un index de tous les identifiants
  • Des fichiers sources annotés (par exemple avec les numéro de lignes) et navigables (par exemple avec HTML, avec lequel les identifiants renvoient vers la documentation associée)

Exemple

Le code ci-dessous illustre la manière dont Doxygen permet de documenter le code.

 
 /** 
 * La classe Time représente un instant (L'instant désigne le plus petit élément constitutif du temps. L'instant n'est pas intervalle de temps. Il ne peut donc être considéré comme...). 
 * @author Paul Hochon 
 */ 
 class (CLASS (CLS) est un célèbre groupe de l'underground informatique. CLASS a cessé son activité le 8 janvier 2004 et en a profité...) Time { 
 /** 
 * Constructeur. 
 * Fixe l'instant à une valeur précise. 
 * @param timemillis Millisecondes écoulées depuis le 1er janvier 1970 
 */ 
 Time(int timemillis) { 
 ... 
 } 
 /** 
 * Récupère l'instant actuel. 
 * @return Un instant correspondant à l'instant présent 
 */ 
 static Time now() { 
 ... 
 }} 
 

Les commentaires du langage cible (ici Java) sont spécialisés pour indiquer à Doxygen qu'il doit les prendre en compte. Ainsi, les commentaires sont ouverts avec /** plutôt que /*. Des balises spécifiques à l'intérieur de ces commentaires sont également interprétées par Doxygen (par exemple : @param).

Dans cet exemple, la rédaction des commentaires utilise le format Javadoc, avec lequel Doxygen est compatible. Doxygen propose son propre format, qui est fonctionnellement équivalent.

Plate-forme

Doxygen est écrit sous Linux (Au sens strict, Linux est le nom du noyau de système d'exploitation libre, multitâche, multiplate-forme et multi-utilisateur de type UNIX créé par Linus Torvalds, souvent désigné comme le noyau Linux. Par extension,...) et Mac OS (Mac OS (pour Macintosh Operating System) est le nom du système d'exploitation d'Apple pour ses ordinateurs Macintosh. Il est surtout connu pour être...), avec un soucis affiché de portabilité (Selon le contexte, le mot portabilité peut avoir plusieurs significations :). Il fonctionne sur la plupart des systèmes Unix et il est disponible en version exécutable sur Microsoft Windows (Windows (littéralement « Fenêtres » en anglais) est une gamme de systèmes d’exploitation produite par Microsoft, principalement destinés aux ordinateurs compatibles PC. C’est le successeur de...).

DoxyWizard

DoxyWizard est une interface (Une interface est une zone, réelle ou virtuelle qui sépare deux éléments. L’interface désigne ainsi ce que chaque élément a besoin de connaître de l’autre pour pouvoir fonctionner correctement.) graphique permettant de configurer les options de génération de Doxygen et de lancer l'extraction de la documentation. Comme Doxygen, il est disponible sur différentes plates-formes.

Licence

Doxygen est publié sous licence GPL.

Page générée en 0.102 seconde(s) - site hébergé chez Amen
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
Ce site est édité par Techno-Science.net - A propos - Informations légales
Partenaire: HD-Numérique