Dokumentieren mit Doxygen

Ähnliche Dokumente
Dokumentations-Richtlinien

Einführung in Javadoc

Dokumentieren mit Eclipse und Doxygen

JAVA Kommentieren mit Javadoc

Installationsanleitung

Daniela Reiner. Stuttgart,

Automatisierte Erstellung von Software-Builds und -dokumentationen. Teil 1

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck

Kurze Einführung in die Benutzung des Dokumentationswerkzeugs Doxygen

SelfLinux Doxygen Howto. Autor: Kim Kulling Formatierung: Florian Frank

DOXYGEN-DOKUMENTATIONS- RICHTLINIEN FÜR C

Programmieren I. Dokumentation mit javadoc Heusch 10.4 Ratz Institut für Angewandte Informatik

Objektorientierte und generische Programmierung

Programmieren I. Dokumentation mit Javadoc Heusch 10.4 Ratz Institut für Angewandte Informatik

PDF-Druck und PDF-Versand mit repdoc Werkstattsoftware

Proseminar Wintersemester 2007 / 2008 DOXYGEN. source code documentation generator tool. Johannes Blatz. Medizinische Informatik / 4.

Kommentierung in C. Kommentierung in C. Von Sebastian Rothe 1/26. Kommentierung in C

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java

<Insert Picture Here> MySQL Workbench für Einsteiger

Eclipse Tutorial.doc

Informationen zur Verwendung von Visual Studio und cmake

Kommentare, Client-Server, Protokolle

Praktikumstermin B-07: make & Makefiles

Ghostscript Installation unter Windows 7

Objekte. Theorieteil. Inhaltsverzeichnis. Begriffe. Programmieren mit Java Modul 5. 1 Modulübersicht 3

GERICHTETER GEWICHTETER GRAPH DESIGNDOKUMENT

U1 3. Übung U1 3. Übung. Die Kommandos auf den folgenden Folien dienen der Veranschaulichung. Sind nicht direkt auf die Übungsaufgabe übertragbar

Druckdienst für PDF-Druck einrichten

PDF-Erzeugung mit PDF-Creator (nur für Windows, wenn kein Acrobat Distiller vorliegt)

Dokumentationswerkzeug Doxygen 1

S.M. Hartmann GmbH IT Solutions

Dokumentationskonzept

Abbildung : Aufruf des Wikis (Server: Interner Web-Server HTTPD auf Port 8080)

Webdesign im Tourismus

AdvancedReport Installationsanleitung

1. Zeilenendkommentare: // geklammerte Kommentare: /*... */ 3. Dokumentationskommentare: /**... */

ICS Font/Symbol Utilities (INTERLIS Tools / GeoShop)

Übung 5. Implementierung einer Datenbank. Prof. Dr. Andreas Schmietendorf 1. Übung 5

Dokumentation Down- und Upload Programm von ABAP und DDIC Elementen

Erstellen eines Normfall Projektspeichers auf Basis einer vorhandenen Installation von:

disigner Bedienungsanleitung Version 1.0, 26. Mai 2010

Zum Abschluss wird gezeigt, wie aus einem C++ Quell-Programm ein ausführbares Programm erzeugt wird. 1. Installation von NetBeans...

Anleitung zur Nutzung von ONLYOFFICE in der Hessenbox

Ein erstes "Hello world!" Programm

Kurzanleitung zu XML2DB

Implementieren von Klassen

login/script login/news Ausloggen Login PHP SCRIPT SCRIPT Level Registrieren Anmelden Administrator Verwaltung Script Einloggen Abmelden User

Erstellen von Web-Seiten HTML und mehr...

FB Informatik Prof. Dr. R.Nitsch. C++ - Dokumentation. Reiner Nitsch r.nitsch@fbi.h-da.de

Datenbanken und Netzanbindung

Benutzung von Microsoft Visual Studio 2017

Hello World! Eine Einführung in das Programmieren Das erste Programm

3.2 Objekte und Klassen. Wir werden uns in diesem Kapitel näher mit Objekten und Klassen in Java beschäftigen.

Programmierpraktikum Java Entdecken Merkblatt 2

Projekt Systementwicklung

Matthias-Claudius-Gymnasium Fachcurriculum Informatik

Einführung in die Programmierung mit Java

Sichtbarkeiten, Klassenmember und -methoden

Bedienungsanleitung der LED-Qube 5 V2

Technische Informatik für Ingenieure Winter 2005/2006 Übungsblatt Nr. 3

Thomas Theis PHP4. Webserver-Programmierung für Um- und Einsteiger. Galileo Press

Installations- & Konfigurationsanleitung

Techniken der Projektentwicklung

Innovator 11 excellence. Anbindung an Visual Studio. Einführung, Installation und Konfiguration. Connect. Roland Patka.

Das Einbinden von Bildern in Memofeldern

Kurze Bedienungsanleitung für den Java-Editor

Programmieren in Python

Einrichtung einer Rundruf-Definition zum Abruf des Elektronischen Kontoauszuges

Maple V, Rel 5.1 Einführungskurs

Einführung in die Informatik Tools

Der CD/DVD-Server in LANiS

Handbuch GS-Dokumente nservice

Dokumentversion 1. Import von CSV-Files. Leitfaden. evergabe. Version 4.9

Sage 50. Allg. Datensicherung. Impressum. Business Software GmbH Primoschgasse Klagenfurt

Anhang C Testprotokoll. 1. Testumgebung. 2. Test der HTML-Seiten. 3. Anwendungstest

DER BESSER INFORMIERTE GEWINNT!

Installation von ib-normcad 11 unter rz-industriebau 2012

PC-SHERIFF MSI Installationspaket erstellen (PC-SHERIFF Premium)

C-Programme kompilieren mit Visual Studio Express

Volltextsuche im Archiv mit Windows-Index-Service

ANT. Kurzvortrag von Manuel Schulze.

Merkblatt System-C Installation Linux

Installation eines SQL Server 2012

Softwareverteilung mit msi-paketen

Ghostscript Installation unter Windows 10

SEW Übung EMFText. 1 Aufgabe. 2 Domänenbeschreibung. 3 Installation von Eclipse/EMFText. 4 Schritt-für-Schritt Anleitung. 4.

Transkript:

Dokumentieren mit Doxygen Prof. Dr. Manfred Brill Oktober 2003 Inhaltsverzeichnis 1 Doxygen 1 2 Dokumentation des Quelltexts 2 3 Konfiguration von Doxygen 3 4 Doxygen ausführen 5 Literatur 5 1 Doxygen Zur Software-Entwicklung gehört auch die Dokumentation dazu das ist eigentlich eine Selbstverständlichkeit. Sie kennen das bestimmt, endlich sind alle Klassen implementiert, die Funktionalität getestet jetzt soll noch eine Dokumentation erstellt werden. Wenn Sie mit Java programmiert haben kennen Sie eventuell das Werkzeug JavaDoc. Damit kann mit Hilfe von Kommentaren, die in den Quelltexten enthalten sind eine Dokumentation erstellt werden. Ein mit JavaDoc vergleichbares Werkzeug ist die Freeware Doxygen. Sie erstellen Ihre Software und kommentieren dabei; je nach Ihren Angewohnheiten eventuell etwas mehr als zuvor. Sie werden bemerken, dass die Arbeit mit Doxygen schnell und einfach in Ihre Implementierungsarbeit integriert werden kann. Doxygen unterstützt neben Java die Programmiersprachen C, C++ und PHP. Eine ganze Menge von großen Projekten, beispielsweise VTK oder OpenSG verwenden Doxygen zur Erstellung der Dokumentation. Doxygen kann neben einer HTML-Ausgabe auch LATEX, RTF oder UNIX-man-Seiten erzeugen. Wir werden uns in diesem Text auf die HTML-Ausgabe konzentrieren und nur eine knappe Einführung geben. Viele Tips und Einstellungsmöglichkeiten finden Sie in [vh02]. Drei Schritte trennen Sie von einer Dokumentation mit Doxygen: 1. Sie müssen in Ihren Quelltexten entsprechende Kommentare einbauen; mehr dazu finden Sie in Abschnitt 2. 2. Sie müssen Doxygen konfigurieren; mehr dazu finden Sie in Abschnitt 3. 3. Sie müssen Doxygen ausführen; mehr dazu finden Sie in Abschnitt 4.

2 Dokumentation des Quelltexts 2 2 Dokumentation des Quelltexts Der Kern der Dokumentation mit Doxygen besteht darin, spezielle Kommentarblöcke in Ihr Programm einzubauen. Für jedes Element des Quellcodes gibt es für Doxygen zwei Beschreibungen: eine Kurzbeschreibung und eine ausführliche Beschreibung. Die Kurzbeschreibung besteht in der Regel aus einer Zeile. Es gibt mehrere Möglichkeiten, die beiden Beschreibungen in den C++-Quelltext einzubauen. In diesem Text beschreibe ich die Variante, die ich in meinen Quelltexten verwende - und die Sie also in dieser Form im Praktikum erhalten. Es ist Ihnen überlassen, sich diesem Vorbild anzuschließen oder nach einem Blick in [vh02] einen eigenen Stil zu wählen. Eine Kurzbeschreibung erhalten Sie durch eine Zeile der Form //! Eine Kurzbeschreibung. Sie können die Kurzbeschreibung bei der Deklaration oder der Definition stehen haben; eine gute Regel ist, die Kurzbeschreibung zur Deklaration zu schreiben. Hier ein Beispiel für eine Kurzbeschreibung einer Klasse: //! Virtuelle Basisklasse für Standardgeometrien in OpenGL class vlgeometry public: //! Defaultkonstruktor vlgeometry(void); Das Beispiel enthält zwei Kurzbeschreibungen: einmal für die Klasse vlgeometry, einmal für den Defaultkonstruktor. Auf die gleiche Weise können Sie alle weiteren Methoden der Klasse und Datenelemente der Klasse dokumentieren. Die Beschreibungen müssen vor dem dokumentierten Quelltext stehen. protected: //! Die Parameter für die Auflösung der Standardgeometrien int resu, resv; Für eine ausführliche Beschreibung, die aus mehreren Zeilen bestehen kann, kann ein Kommentar der Form Eine ausführliche Beschreibung, die aus mehreren Zeilen besteht. Die führenden Leerzeichen in den Zeilen werden beim Erzeugen der Dokumentation ignoriert! verwendet werden. Sie sehen, eigentlich müssen Sie Ihre Kommentare nur durch das Ausrufungszeichen ergänzen das ist doch wirklich nicht viel, oder? Eine gute Regel ist, die ausführliche Beschreibung zur Definition einer Klasse oder Methode zu schreiben. Sie sollten die Deklaration in eine Header-Datei schreiben. Enthält diese Datei auch die ausführlichen Beschreibungen wird dies für die Benutzer Ihrer Programme leicht unübersichtlich dafür erzeugen Sie ja die Dokumentation. Das folgende Beispiel zeigt die ausführlichen Beschreibungen für die Klasse aus dem bereits gezeigten Beispiel: #include "vlgeometry.h" Die Basisklasse enthält zwei ganze Zahlen, mit deren Hilfe die abgeleiteten Klassen jeweils die Auflösung festlegen können. Für das Setzen und Abfragen dieser Parameter werden entsprechende inline-funktionen definiert.

3 Konfiguration von Doxygen 3 Darüberhinaus wird die rein virtuelle Funktion ::draw() deklariert, die von den instanzierbaren Klassen implementiert werden muss. Die Auflösungen werden jeweils mit 1 initialisiert. vlgeometry::vlgeometry(void) resu = 1; resv = 1; } Doxygen kennt eine Menge von Tags, die für die jeweiligen Text-Systeme in Links oder Index- Einträge umgewandelt werden. Im folgenden Beispiel sehen Sie den Tag \param, mit dem Sie sich speziell auf Parameter einer dokumentierten Methode beziehen können. In HTML wird dadurch ein Hyperlink auf die Datei erzeugt, in der diese Parameter dokumentiert sind. Mit \sa können Sie einen Verweis erzeugen; die Abkürzung steht für see also. \param u,v sind die beiden als ganze Zahlen deklarierten Auflösungsparameter, die in den von vlgeometry abgeleiteten Klassen entsprechend verwendet werden können. \sa resu \sa resv vlgeometry::vlgeometry(int u, int v) resu = u; resv = v; } Das Ergebnis dieser Dokumentation ist eine Menge von HTML-Dateien; die Einstiegsseite ist die Datei index.html. Was auf dieser Einstiegsseite enthalten ist können Sie ebenfalls durch einen entsprechenden Kommentar festlegen. Dazu verwenden Sie den Tag \mainpage und Text, den Sie entsprechend verfassen. Hilfreich sind auch die Tags \author, \date und \image: \mainpage \author Manfred Brill \date Oktober 2003 \image html vislab.jpg Ergänzen Sie diesen Text und dokumentieren Sie Ihre Klassen mit Hilfe von Doxygen! Für die Erstellung der HTML-Seiten verwenden Sie doxywizard oder das Kommando doxygen in der Cygwin-Shell. Die Konfiguration finden Sie in der Datei doxy. In der Shell entspricht dies dann dem Kommando <<doxygen doxy>>. 3 Konfiguration von Doxygen Den wichtigsten Schritt haben Sie schon hinter sich Sie haben die entsprechenden Kommentare in Ihren Quelltext eingebaut. Bevor die Dokumentation erstellt wird müssen Sie jetzt festlegen, in

3 Konfiguration von Doxygen 4 welchem Format die Dokumentation zur Verfügung stehen soll; wo Sie abgespeichert wird und welche Bestandteile die Dokumentation enthalten sind. Dabei können Sie die meisten Grundeinstellungen so belassen, wie sie von Doxygen als Default vorgeschlagen werden. Sie erhalten auf diese Weise beispielsweise eine komplette Cross-Referenz Ihres Projekts. Die Einstellung für Doxygen stehen in einer Konfigurationsdatei. Das Format entspricht einem Makefile. In einer Shell, sei es cmd.exe in MS Windows oder eine UNIX-Shell können Sie mit doxygen -g <config-file> eine entsprechende Datei erzeugen. Geben Sie keinen Namen an und nur die Option -g, dann wird eine Datei mit dem Namen Doxy-file erzeugt. Wollen Sie anschließend die Einstellungen überprüfen oder verändern, dann können Sie dies mit Hilfe eines ASCII-Editors durchführen. Eine Alternative dazu ist das Werkzeug doxywizard, das ein kleines Frontend zum Erzeugen, Verändern und auch Speichern von Konfigurationsdateien unter Microsoft Windows anbietet. In Abbildung 1 sehen Sie eine Darstellung des Wizards. Abbildung 1: Der doxywizard in Aktion Zwei Einträge sind wichtig. Einmal müssen Sie das Verzeichnis angeben, in dem die Ausgabe erfolgen soll. Doxygen legt HTML-Ausgaben in einem Unterverzeichnis mit dem Namen html, LATEX-Ausgaben im Unterverzeichnis latex ab. Und Sie müssen natürlich festlegen, wo die Eingaben, also die zu dokumentierenden Quelltexte liegen. Dies können Sie unter dem Reiter INPUT durchführn. Für kleine Projekte reicht es, die Konfigurationsdatei in das Verzeichnis zu speichern, in dem sich die zu bearbeitenden Quellen befinden. Bei großen Projekten, die vielleicht sogar einen ganzen Baum von Unterverzeichnissen mit Quellen enthalten, geben Sie als INPUT die Wurzel des Baums an. Sie können auch Muster wie *.cpp und *.h angeben, um sicher zu stel-

Literatur 5 len, dass die richtigen Quelldateien bearbeitet werden. Und Sie müssen den RECURSIVE-Tag auf YES stellen! Sollen die Quellen in der Dokumentation enthalten sein, dann stellen Sie den Wert für INLI- NE SOURCES auf YES; setzen Sie SOURCE BROWSER auf YES, falls Sie eine Cross-Referenz Ihrer Quellen erzeugen möchten. 4 Doxygen ausführen Dies wird jetzt der einfachste Schritt. In einer Shell geben Sie doxygen <config-file> ein. Damit wird, je nach Konfigurationseinstellung, die gewünschte Ausgabe erzeugt. Haben Sie kein Ausgabeverzeichnis mit dem Tag OUTPUT DIRECTORY festgelegt dann wird die Ausgabe im aktuellen Verzeichnis abgelegt. Tip: Sie können die Erzeugung der Dokumentation in Ihren Makefile integrieren. Damit wird es möglich, Doxygen in Eclipse anzustoßen. Alles was Sie dazu benötigen ist ein entsprechendes make-target. Angenommen, die Konfigurationsdatei hat den Namen doxy, dann reicht ein Target doc und die Regel doxygen doxy. Mehr zur Arbeit mit Makefiles finden Sie in [Bri03]. Für die Ansicht der HTML-Ausgabe müssen Sie einen Browser verwenden, der CSS unterstützt. Die LATEX-Ausgabe muss anschließend natürlich bearbeitet werden. Dies können Sie wie gewohnt durchführen; die Hauptdatei trägt als Default den Namen refman.tex. Oder, falls Sie make installiert haben, mit der Eingabe von make in dem Verzeichnis, in dem Doxygen die LATEX-Ausgabe abgelegt hat. Dadurch wird eine Datei refman.dvi erzeugt. Wollen Sie eine Postscript-Datei, dann geben Sie make ps ein; vorausgesetzt Sie haben das Programm dvips installiert. Sie können mit dem Makefile auch PDF erzeugen, vorausgesetzt Sie haben ghostscript installiert. Geben Sie einfach make pdf ein. Ist in der Konfiguration der Tag PDF HYPERLINKS auf YES gesetzt, dann werden in der PDF-Datei Links erzeugt! Literatur [Bri03] BRILL, MANFRED: Programmieren mit Cygwin und UNIX. Fachhochschule Kaiserslautern, 2003. [vh02] HEESCH, DIMITRI VAN: User Manual for Doxygen 1.2.17, 2002.