Dokumentieren in C/C++ ?

Gast #3725813
Hallo alle zusammen,

wir haben erst nächstes Jahr prozedurale Programmierung mit C im 
Studium. Mich würde aber dennoch bereits interessieren, wie und womit in 
C bzw. C++ der Code dokumentiert wird. Gibt es da einen 
Industriestandard? Ich kenne bislang nur JDoc für Java. Da bieten die 
meisten IDE's ja direkt eine Funktion womit man die per Klick direkt im 
HTML exportieren kann. Wie sieht es da bei C und C++ aus?

Viele Grüße
Gast #3725818
Doxygen.

Aber beachte: generierte Dokumentation ist keine Dokumentation.

In der Industrie (und vielen Open-Source-Projekten) macht man das nur, 
weil man keinen Bock auf echte Doku hat, aber trotzdem verpflichtet ist, 
etwas abzuliefern, was als Doku fehlinterpretiert werden kann.
Gast #3725831
Vielen Dank für die raschen Antworten! :)

Fritz schrieb:
> Aber beachte: generierte Dokumentation ist keine Dokumentation.

Entschuldigt die Frage, aber wie unterscheiden sich eine generierte 
Dokumentation von einer "anderen"? In JDoc beispielsweise gebe ich doch 
ebenfalls die Beschreibung manuell an und beschreibe die Parameter usw. 
Generiert wird doch dann lediglich eine lesbare Anordnung? Oder verstehe 
ich da was falsch?

Lg!
Gast #3725832
Hallo!

Das klingt jetzt neu. Wieso? Meinst Du mit "generierter Dokumentation" 
Doku, die aus nicht instrumentiertem Code erzeugt wird, und einfach 
kommentarlos irgendwelche Aufrufgraphen, etc. aufzeigt?

Wir verwenden Doxygen und schreiben halbe Romane in den Source-Code. 
Bisher hat das keine Probleme gegeben und ich wüsste auch nicht, wieso. 
Wenn Code und Dokumentation aus derselben Quelle stammen, erspart man es 
sich, beides zwangsweise synchron zu halten (ja, ist mit geeigneten 
Prozessen natürlich machbar, aber nur mit zusätzlichem Aufwand, den ich 
irgendjemandem in Rechnung stellen muss).

Die Alternative in der Industrie sind nämlich immer noch häufig 
irgendwelche Word-Vorlagen, und das ist einfach Tierquälerei, einen 
Entwickler zu zwingen die auszufüllen.

Also meine ehrlich gemeinte Bitte: Erkläre doch mal genauer, was Du 
meinst.

Danke,
 Stefan
#3725867
Stefan Hennig schrieb:
> Wir verwenden Doxygen und schreiben halbe Romane in den Source-Code.
> Bisher hat das keine Probleme gegeben und ich wüsste auch nicht, wieso.

Ist schon in Ordnung, macht weiter so.

Das wird häufig gemacht und erzeugt (wenn man es ernsthaft betreibt) 
gute Programmierdoku.

Doof ist es nur, wenn man nichts manuell schreibt und nur von einem Tool 
das ausgeben lässt, was sich algorithmisch an Doku erzeugen lässt 
(Parameter auflisten etc.).

Zudem muß man überlegen, für wen man dokumentiert.
Doxygen ist sehr auf die Struktur des Quelltextes fixiert, und damit gut 
geeignet, Doku für Programmierer zu erzeugen.
Dagegen ergibt das natürlich keine Doku für einen weiter entfernt 
stehenden Anwender eines Programms. Z.B. würde sich eine Sekretärin, die 
mit Word arbeiten muß, nicht in einer Doku zurechtfinden, die aus dem 
Quelltext erzeugt wird.
Außerdem kann eine nachträglich erzeugte Doku niemals das ersetzen, was 
man VOR der ersten geschriebenen Zeile Quelltext schon haben sollte, 
nämlich was man eigentlich schreiben will.
Gast #3726222
Genau das meinte ich.

Aber selbst andernfalls: Wirklich gute Dokumentation besteht nicht nur 
aus dem funktionszentrierten Format, das Doxygen geradezu herausfordert.

Größere Projekte brauchen Tutorials, Guides, Handbooks.

Das ist alles eine Frage der Abstraktionsebene und auch "des Tonfalls".
Gast #3731134
Alles schon richtig, aber darum geht's doch hier gar nicht:

Doxygen ist das, was der OT sucht. Wenn man so will, das "C++ Pendant zu 
JavaDoc".

Tutorials, Guides, Handbooks, Stories, UseCases, usw. können relevant 
sein, sind jedoch allesamt völlig programmiersprachenagnostisch.

Viele Grüße,
TK

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 12 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.