next up previous
Nächste Seite: Generierung der Dokumentation Aufwärts: Dokumentation von Bibliotheken Vorherige Seite: Dokumentationsvarianten

Repräsentierung der Dokumentation

Grundsätzlich kann Dokumentation in Form von Papier (Schrankware) oder am Rechner online vorliegen, wobei natürlich vorzugsweise beide Varianten unterstützt werden. Zweifellos ist Hypertext insbesondere bei Referenz-Manuals die attraktivste Repräsentierung, da neben der traditionellen Vorteile der Referenz-Manuals noch Navigierbarkeit, das leichte Verfolgen von Verweisen und die Durchsuchbarkeit hinzukommen können.

Eine gute Referenz-Dokumentation sollte in ihrer Struktur der Bibliothek und der zugrundeliegenden Programmiersprache gleichen. So ist es insbesondere wichtig, daß die Orientierung entsprechend der Schichten, Pakete und Hierarchien wiedergegeben wird. Ein gutes Beispiel dafür ist die Online-Dokumentation der Sather-Bibliothek, die am International Computer Science Institute an der Universität in Berkeley entwickelt worden ist.

Wie auf der Abbildung 4.1 zu sehen, wird links eine Struktur in Paketen vorgegeben (z.B. Sets, External und Graphs) und rechts die Beschreibung einer abstrakten Klasse dargestellt (in der Abbildung RO_SETS). Nach einer einführenden Beschreibung folgt die Liste der übergeordneten Klassen, von denen RO_SETS abgeleitet ist, danach folgen die abgeleiteten Klassen (jeweils verbunden mit Hypertext-Verweisen). Danach wird jede exportierte Operation oder Komponente (genannt features in Eiffel und Sather) aufgelistet und erläutert.

Abbildung 4.2: Erweiterungshierarchie in der Dokumentation
\begin{figure}\epsfig{file=sather-doc2.eps}\end{figure}

Weiter unten (wie in Abbildung 4.2 zu sehen) endet die Referenz-Seite mit einer graphischen Darstellung der Klassenhierachie, in die RO_SETS eingebettet ist.

Für die Dokumentation von Java-Bibliotheken gibt es eine Repräsentierung, die sich ebenfalls sehr eng an die Struktur von Java anlehnt. Entsprechend den hierarchischen Modulnamen in Java ergeben sich die Pakete. Bei den einzelnen Modulen in Java gibt es drei verschiedene Varianten: interfaces (abstrakte Schnittstellen analog zu deferred classes in Eiffel oder abstract virtual classes in C++), classes (Implementierungen von abstrakten Schnittstellen oder Ableitungen anderer Klassen) und exceptions (Hierarchie von Ausnahmen, die zur Fehlerbehandlung dienen).

Anstatt wie bei der Dokumentation zur Sather-Bibliothek mit einer zweigeteilten Anzeige zu arbeiten (frames), sind die Seiten bei Java hierarchisch organisiert, wobei es immer recht einfach ist, in die höhere Ebene zurückzugelangen. Die oberste Ebene liefert einen Überblick über alle Pakete und auf der darunterliegenden Ebene sind in sortierter Form (nach den drei Varianten) die einzelnen Module zu finden (siehe Abbildung 4.3).

In der dritten und untersten Ebene wird dann ein einzelnes Modul vorgestellt (siehe Abbildung 4.4). Die Seite beginnt mit einer Darstellung der Erweiterungshierarchie, die dank single inheritance genügend einfach ist. Die Seite wird dann mit einem Index der Variablen, Konstruktoren und Methoden fortgesetzt und mit ausführlichen Erläuterungen abgeschlossen.

Abbildung 4.3: Dreigeteilter Modulindex eines Java-Pakets
\begin{figure}\epsfig{file=java-doc-index.eps}\end{figure}


next up previous
Nächste Seite: Generierung der Dokumentation Aufwärts: Dokumentation von Bibliotheken Vorherige Seite: Dokumentationsvarianten
Andreas Borchert 2000-12-18