Dokumentation: Unterschied zwischen den Versionen
Jeremi (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Jeremi (Diskussion | Beiträge) |
||
Zeile 32: | Zeile 32: | ||
=== XML Kommentare === | === XML Kommentare === | ||
... | Mit XML Kommentaren können Klassen, Methoden, Eigenschaften, etc. zusätzliche Meta Informationen mitgegeben werden, um die Dokumentation des Codes zu erleichtern. Gibt man in Visual Studio vor einer bereits deklarierten Prozedur das dritte Slash ein, so werden anhand der Signatur der Funktion automatisch die notwendigen XML Tags erstellt. | ||
<source lang="csharp"> | |||
/// <summary> | |||
/// Calculates length of the hypotenuse in a right-angled triangle. | |||
/// (Pythagorean theorem) | |||
/// </summary> | |||
/// <param name="a">length of first leg</param> | |||
/// <param name="b">length of second leg</param> | |||
/// <returns>length of hypotenuse</returns> | |||
public double GetHypotenuse(double a, double b) | |||
{ | |||
return Math.Sqrt(Math.Pow(a, 2) + Math.Pow(b, 2)); | |||
} | |||
</source> [[Kategorie:Code-Beispiele]] | |||
=== Task Listen Kommentare === | === Task Listen Kommentare === |
Version vom 27. April 2012, 04:02 Uhr
Warum kommentieren?
...
Kommentare als Werkzeug
Visual Studio bietet verschiedene Möglichkeiten, Kommentare zu verfassen. Neben den Inline Kommentaren, die nur für kurze Anmerkungen verwendet werden sollten, gibt es noch mehrzeilige Kommentare und XML Kommentare, mit denen sich Meth
Einzeilige Kommentare (single line comment)
Einzeilige Kommentare beginnen mit zwei Slashes und enden automatisch am Ende der Zeile:
//Dies ist ein Inline Kommentar. Er endet automatisch am Ende der
//Zeile, so dass // in jeder Zeile wiederholt werden muss.
int i = 0; // Inline Kommentare können auch in der Mitte einer Zeile beginnen
Abgegrenzte Kommentare (delimited comment)
Ein Stern nach einem Slash (/*
) leitet einen Kommentarblock ein. Der Kommentar endet erst, wenn das das entsprechende Token zum beenden des abgegrenzten Kommentars gefunden wurde (*/
).
/* Dies ist ein Mehrzeiliger
Kommentar. Ich brauche nicht
jede Zeile wieder neu als
Kommentar markieren. */
XML Kommentare
Mit XML Kommentaren können Klassen, Methoden, Eigenschaften, etc. zusätzliche Meta Informationen mitgegeben werden, um die Dokumentation des Codes zu erleichtern. Gibt man in Visual Studio vor einer bereits deklarierten Prozedur das dritte Slash ein, so werden anhand der Signatur der Funktion automatisch die notwendigen XML Tags erstellt.
/// <summary>
/// Calculates length of the hypotenuse in a right-angled triangle.
/// (Pythagorean theorem)
/// </summary>
/// <param name="a">length of first leg</param>
/// <param name="b">length of second leg</param>
/// <returns>length of hypotenuse</returns>
public double GetHypotenuse(double a, double b)
{
return Math.Sqrt(Math.Pow(a, 2) + Math.Pow(b, 2));
}
Task Listen Kommentare
Visual Studio kann in Kommentaren nach bestimmten Token suchen und diese dann in der Task Liste gesammelt anzeigen. So können zum Beispiel Codestellen markiert werden, die noch einer Bearbeitung bedürfen. Vordefinierte Token sind TODO, HACK und UNDONE. Ein Token muss immer direkt hinter den Zeichen stehen, die den Kommentar einleiten.
// TODO Diese Zeile erscheint in der Task Liste
/* HACK Auch dieser mehrzeilige Kommentar
erscheint in der Task Liste */
Es können auch eigene Token erstellt werden.[1]
Doxygen Befehle
Wird ein Programm wie Doxygen verwendet, um aus dem Source Code automatisiert eine Dokumentation zu generieren, so können in den Kommentaren noch zusätzlich Special Commands[2] verwendet werden. Mit ihnen lassen sich zum Beispiel der Text formatieren oder man kann bestimmte Meta Informationen zum Code mitgeben.
Wie und was kommentieren?
...
Wann kommentieren?
Kommentieren ist schön und gut, aber wann genau soll nun kommentiert werden? Es gibt mehrere Ansätze, Kommentare zu verfassen, die auch von dem jeweiligen Programmierstil abhängen.
Bei einem geplanten Vorgehen überlegt man sich im Voraus, was der Code genau leisten soll. Dann spezifiziert man die Parameter und die Rückgabe und verfasst noch vor dem Implementieren einen Kommentar der genau beschreibt, was der Code leisten wird. Vorteil dieses Ansatzes ist, dass auf diese Weise Funktionen und Klassen markiert werden können, die man (oder ein anderer Entwickler) erst später implementieren wird. Solche Codestellen sollten unbedingt mit einem Task List Comment markieren:
// TODO kurze Beschreibung, was genau hier noch zu tun ist
Referenzen
- ↑ http://msdn.microsoft.com/en-us/library/zce12xx2(VS.80).aspx Mircrosoft Msdn Library - How to: Create Task List Comments
- ↑ http://www.stack.nl/~dimitri/doxygen/commands.html Doxygen Manual - Special Commands