Forum: PC-Programmierung QT/C++ in Visual Studios 2012 Prof wie dokumentieren?


von gissbert (Gast)


Lesenswert?

Hallo allerseits,

ich bin dabei vom QT Creator auf Visual Studios 2012 Prof umzusteigen. 
Nun würde ich gerne Fragen, wie ihr euren Code dokumentiert?

Wenn ich IntelliSense nutzen möchte, bin ich wohl auf die XML Tags 
(<summary>...) von MS angewiesen. Wenn ich diese jedoch nutze kann wohl 
doxygen und Konsorten nichts mehr damit anfangen. Mach ich es umgekehrt 
geht doxygen aber nicht mehr IntelliSense.. was ein Schlamassel :(

Wie löst ihr das? Wie dokumentiert ihr euren Code? Für mich sind die 
AutoVorschläge und die Anzeige von Informationen zu den Funktionen 
elementar wichtig, ich würde das nur sehr ungern missen (genau wie den 
Debugger von Visual Studios).

Was würdet ihr empfehlen? MS spezifische Tags verwenden? Das dumme ist 
wenn man sie nutzt kommt man wohl auch nicht mehr so einfach von Visual 
Studios wieder weg zu einer anderen IDE...

Ach ja, kann Visual Studios 2012 eigentlich auch Informationen zu QT 
Funktionen anzeigen, wäre das möglich?

Würde mich also über eure Vorschläge freuen bzw über Infos wie ihr das 
so löst :)

Gissbert

von Alexander B. (leuchte)


Lesenswert?

gissbert schrieb:
> Wenn ich IntelliSense nutzen möchte, bin ich wohl auf die XML Tags
> (<summary>...) von MS angewiesen. Wenn ich diese jedoch nutze kann wohl
> doxygen und Konsorten nichts mehr damit anfangen. Mach ich es umgekehrt
> geht doxygen aber nicht mehr IntelliSense.. was ein Schlamassel :(

Bist du denn auf die Ausgaben von Doxygen denn so sehr angewiesen? Die 
Stärke von den XML Tags von Visual Studio ist eben IntelliSense und dass 
es dir alles beim Kompilieren in XML zusammendampft. Das kannst du dann, 
wie du sicher weißt, in alle möglichen Formen weiterverarbeiten. Z.B. 
nach via XSLT in PDF, HTML, RTF, TXT, sogar in Word-XML, oder eben alles 
in eine Datenbank (falls deine Projekte denn jemals so riesig werden). 
Ich selbst nutze die XML-Dokumentation für den Anhang eines API-Manuals, 
welches durch Apache FOP als PDF generiert wird.

Also wenn du nur im Visual Studio Umfeld arbeitest, kannst du getrost 
auf Doxygen verzichten. Vom Visual Studio-XML aus kannst du die 
Dokumentation überall hin transformieren.

von gissbert (Gast)


Lesenswert?

Alexander B. schrieb:
> Bist du denn auf die Ausgaben von Doxygen denn so sehr angewiesen?

Nicht speziell auf Doxygen, aber ich bräuchte schon eine HTML-Ausgabe 
oder ähnliches lesbares.

Alexander B. schrieb:
> Die
> Stärke von den XML Tags von Visual Studio ist eben IntelliSense und dass
> es dir alles beim Kompilieren in XML zusammendampft. Das kannst du dann,
> wie du sicher weißt, in alle möglichen Formen weiterverarbeiten. Z.B.
> nach via XSLT in PDF, HTML, RTF, TXT, sogar in Word-XML, oder eben alles
> in eine Datenbank (falls deine Projekte denn jemals so riesig werden).

Okay wusste ich nicht... muss ich mal danach googlen wie das 
funktioniert dann wären meine Probleme erst mal gelöst. Hast du dazu 
evtl. Beispiele?

Alexander B. schrieb:
> Ich selbst nutze die XML-Dokumentation für den Anhang eines API-Manuals,
> welches durch Apache FOP als PDF generiert wird.

Hast du dazu ein Beispeil? Ich konnte erst mal nichts finden was sich 
auf Visual Studios bezieht (nur wie man Apache FOP mit C#, VB.Net etc 
nutz) :(


Das Problem was ich noch sehe ist das man damit nicht mehr von Visual 
Studios wegkommt, falls man wieder wechseln möchte. Doxygen und 
Konsorten laufen so wie ich das sehe ja unter allen Plattformen und für 
einige IDEs gibts auch PlugIns.
Aufgrund meines Studiums komme ich kostenlos an Visual Studios weshalb 
ich es nun auch nutzen möchte ;)

von rere (Gast)


Lesenswert?

gissbert schrieb:
> Das Problem was ich noch sehe ist das man damit nicht mehr von Visual
> Studios wegkommt, falls man wieder wechseln möchte.
Dann geht der Plan von MS ja auf...

von Alexander B. (leuchte)


Lesenswert?

gissbert schrieb:
> Hast du dazu ein Beispeil? Ich konnte erst mal nichts finden was sich
> auf Visual Studios bezieht (nur wie man Apache FOP mit C#, VB.Net etc
> nutz) :(

Ein konkretes Beispiel kenne ich selbst gerade nicht. Ich mach das aber 
folgendermaßen:

Neben dem eigentlichen App-Projekt habe ich auch ein 
Documentation-Projekt. Dieses besteht aus handgeschriebenem XML, welches 
einiges an Fließtext für die Dokumentation enthält. Beim Bau wird eine 
Batch-Datei angestoßen, die dann FOP mit den richtigen Parametern 
startet. Zu den Parametern gehört ein ebenfalls handgeschriebenes 
XSL-Stylesheet. Dieses greift sich dann die XML-Dateien des 
Documentation-Projektes und die automatisch erzeuge Dokumentation des 
App-Projektes und nach einigem rattern fällt dann ein schickes 
PDF-Dokument heraus. Das gleiche geht ganz ähnlich auch nach HTML.

Vorteil: Du bist äußerst flexibel in der Gestaltung der Dokumentation.
Nachteil: XSL-Stylesheets zu schreiben braucht viel Zeit.

gissbert schrieb:
> Aufgrund meines Studiums komme ich kostenlos an Visual Studios weshalb
> ich es nun auch nutzen möchte ;)

Das ist eigentlich nur sinnvoll, wenn du dich auch intensiv mit den 
Windows-Programmierung auseinander setzen möchtest. Visual Studio kann 
eine ganze Menge und der Build-Prozess lässt sich äußerst flexibel 
anpassen. Die Lernkurve ist aber recht steil und wenn dein Ziel nicht 
die Windows-Plattform ist, wäre mir das Aufriss zu groß.

Wenn du plattformunabhängig bleiben willst, rate ich eher zu Eclipse + 
Doxygen.

von gissbert (Gast)


Lesenswert?

Alexander B. schrieb:
> Nachteil: XSL-Stylesheets zu schreiben braucht viel Zeit.

Ich glaube damit wäre das ganz nichts für mich :(
Gigantisch großes Plane ich zwar nicht, aber ich habe auch keine Lust 
darauf mich wochenlang nur damit zu beschäftigen, das hinterher eine 
vernünftige Doku dabei raus kommt.

Alexander B. schrieb:
> Das ist eigentlich nur sinnvoll, wenn du dich auch intensiv mit den
> Windows-Programmierung auseinander setzen möchtest.

Ich empfinde das etwas anders, ich finde die Features extrem gut von 
Visual Studios und der Debugger ist ein wahrer Segen für mich. Zudem 
läuft es bei mir wesentlich schneller als bei Eclipse (Zeitpunkt vom 
klicken auf "Debuggen" bis das Programm wirklich läuft geht gefühlt 10x 
so schnell).

Also mit Eclipse bin ich überhaupt nicht warm geworden und würde daher 
nur ungern zurück. Dann lieber QT Creator.

Was ich jetzt noch gesehen habe ist "Visual Assist", das kann scheinbar 
Doxygen und unterstützt damit IntelliSense. Das wäre für mich eigetnlich 
die perfekt Lösung, kostet aber leider etwas. Eventuell werde ich es mal 
testen und sehen ob es sich lohnt.

von Arc N. (arc)


Lesenswert?

Sandcastle Help File Builder
http://shfb.codeplex.com/
erzeugt aus dem XML HTML-Hilfe-Seiten und Doxygen kann auch mit 
XML-Kommandos umgehen...
http://www.stack.nl/~dimitri/doxygen/manual/xmlcmds.html

von gissbert (Gast)


Lesenswert?

Die zwei Tools klingen doch sehr interessant das scheint dann wohl genau 
das zu sein was ich haben will :)

Wusste gar nicht das Doxygen das auch kann...

Noch eine Kleinigkeit:
Wisst ihr ob es noch andere IDEs gibt die auch diese XML-Tags verstehen, 
um damit dann bei den Autovorschlägen weitere Informationen anzuzeigen?

von Rolf Magnus (Gast)


Lesenswert?

gissbert schrieb:
> Wisst ihr ob es noch andere IDEs gibt die auch diese XML-Tags verstehen,
> um damit dann bei den Autovorschlägen weitere Informationen anzuzeigen?

KDevelop kann die Doku auslesen, meines Wissens über Doxygen-Kommentare, 
ob's auch die XML-Tags kennt, weiß ich nicht.
Das sieht dann so aus:
http://kdevelop.org/sites/kdevelop.org/files/photos/Kdevelop_cpp_codetooltip.png

von gissbert (Gast)


Lesenswert?

Genau sowas würde ich auch gerne haben. Mit Visual Studios klappt das 
mit den XML Kommentaren auch wunderbar, aber soweit ich das sehe kann 
leider nur Visual Studios diese Kommentare lesen, der Rest setzt auf 
Doxygen.

Weiß einer ob es möglich ist auch zu QT-Funktionen solche Kommentare in 
Visual Studios anzuzeigen?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.