 |
C++Talk.NET C++ language newsgroups
|
| View previous topic :: View next topic |
| Author |
Message |
Andreas Huennebeck Guest
|
Posted: Wed Sep 22, 2004 2:45 pm Post subject: Re: Quelltext kommentieren... |
|
|
Bjoern Wolter wrote:
| Quote: | Ich bin gerade dabei ein paar kleine Tools für mich in C++ zu erstellen.
Da ich das ganze aber doch recht professionel machen will ,frage ich
mich wie und wo kommentiere ich meinen Quelltext.
Die Fragen lauten im einzelnen
Kommentiere ich MEthoden und Members (Klassenvariablen) oder nur die
Methoden ?
|
Beides, sofern die Namen nicht sehr aussagekraeftig sind oder
das ganze nicht trivisal ist.
| Quote: | Wo kommentiere ich die Methoden / Members im .cpp oder im .h ?
|
Ich dokumentiere die Anwendung einer Methode im Header - das ist
die Datei, die der Anwender sieht. Ich benutze zur automatischen
Generierung einer huebschen Doku Tools wie doc++ oder doxygen,
die koennen HTML, Tex und/oder PDF erzeugen.
In der Implementierungsdatei kommentiere ich die Interna, d.h.
alle paar Zeilen Code steht ein Kommentar, der erklaert, was da
jetzt kommt und warum.
| Quote: | Wie sieht so ein MEthoden Kommentar aus ? Alle Parameter genau
dokumentieren oder nur eine kurze Beschreibung..
|
Wenn Du doxygen oder doc++ verwendest, beides sprich einen
Einzeiler gefolgt von einer ausreichend ausfuehrlichen Beschreibung
der Methode.
| Quote: | Soll ich einen "aufwendigne" Text Header (wie bei manchen GPL Progrs) in
jedes File schreiben, das die Funktion und Arbeitsweise der KLasse genau
beschreibt, oder einfach nur eine Zeile mit kurzem Kommentar
|
Wenn Du doxygen oder doc++ verwendest, beides sprich einen
Einzeiler gefolgt von einer ausreichend ausfuehrlichen Beschreibung
der Klasse.
| Quote: | Wie kommentiert und dokumentiert ihr euren Quelltext
|
Siehe folgendes beispiel aus einem Header:
/** like {tt strtok(3S)}, but working with {tt string}(STL) type.
{tt UtilStringToken()} works on a {tt string}(STL) like {tt strtok(3S)}
on C type character arrays. Other than {tt strtok()} all the work is done
in one call, storing the tokens in the sequential string container
{tt result}.
Examples for a sequential string container are {tt vector<string>},
{tt deque<string>} or {tt list<string>} from the STL.
{tt UtilStringToken()} does not clear this container, so this must be
done before the function call.
Please include {em Util/String.h}.
@param line string to extract tokens from
@param separator token separator characters
@param result sequential string container
*/
template <class container> void UtilStringToken
(
const string& line,
const string& separator,
container& result
)
{ ...
Dieses {tt ..} und {em ..} Zeugs ist doc++ Formatierung.
Tschau
Andreas
--
Andreas Hünnebeck | email: [email]ah (AT) despammed (DOT) com[/email]
----- privat ---- | www : http://www.huennebeck-online.de
Fax/Anrufbeantworter: 0721/151-284301
GPG-Key: http://www.huennebeck-online.de/public_keys/andreas.asc
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
Stefan Reuther Guest
|
Posted: Wed Sep 22, 2004 6:37 pm Post subject: Re: Quelltext kommentieren... |
|
|
Bjoern Wolter wrote:
| Quote: | Kommentiere ich MEthoden und Members (Klassenvariablen) oder nur die
Methoden ?
|
Woher sollen wir wissen, ob du Methoden kommentierst? *duck*
Ich kommentiere auf jeden Fall alles, was public und protected ist, da
das die Schnittstellen meiner Klasse sind. Private Member werden
kommentiert, wenn das für das Verständnis hilfreich ist, aber nicht
immer (bei 'class Point { int x, y; }' z.B. ist es nicht sooooo dringend).
| Quote: | Wo kommentiere ich die Methoden / Members im .cpp oder im .h ?
|
Ich kommentiere meistens im .cpp und lasse dann doxygen drüber laufen.
Das hat den Vorteil, dass die Klassendeklarationen hübsch übersichtlich
bleiben (einer meiner Hauptkritikpunkte an Java ist, dass durch die
inline-Implementation die Schnittstelle der Klasse nicht mehr erkennbar
ist).
Der Nachteil ist, dass inline- und abstrakte Methoden in der .cpp nicht
auftauchen und daher auch nicht (jedenfalls nicht ganz so einfach)
kommentiert werden können, diese dokumentiere ich daher meistens in der
Klassendefinition.
Eine Klasse wird bei mir i.a. ebenfalls im .cpp dokumentiert, z.B. so
(wahllos herausgegriffen):
/************************* CommandLineParser ************************/
/*! class CommandLineParser
Encapsulates the logic for parsing a command line into
options and non-options. Derived classes implement the
actual parameter interpretation. [...] */
/** Initialize. */
CommandLineParser::CommandLineParser(bool traditional)
: argv(0), traditional(traditional)
{ }
Das erste ist der Klassenkommentar (Doxygen-Syntax), das zweite der
Konstruktor. Hier nicht besonders vorbildlich ausführlich.
| Quote: | Wie sieht so ein MEthoden Kommentar aus ? Alle Parameter genau
dokumentieren oder nur eine kurze Beschreibung..
|
In letzter Zeit bemühe ich mich, wirklich alle Parameter zu erwähnen.
Auch die trivialen. Mit allen Nebenbedingungen. Das führt automatisch
dazu, dass ich mir mehr Gedanken über die Aufrufschnittstelle mache
("muss ich diesen Sonderfall wirklich explizit verbieten oder lässt er
sich nicht doch elegant behandeln?"). Gleichzeitig kann man noch
Unittests schreiben, siehe vorige Woche :-)
| Quote: | Soll ich einen "aufwendigne" Text Header (wie bei manchen GPL Progrs) in
jedes File schreiben, das die Funktion und Arbeitsweise der KLasse genau
beschreibt, oder einfach nur eine Zeile mit kurzem Kommentar
|
Beides. Den Copyright-Blurb kann man notfalls auch automatisch einfügen
lassen (so mach ich das), aber eine Beschreibung der Funktionalität der
Datei muss einfach sein. Wenn der GPL-Blurb der einzige Kommentar ist,
kann ein Dritter mit der Datei kaum was anfangen, weil er ja nicht
weiss, was das Ding tun soll.
Stefan
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
Bjoern Wolter Guest
|
Posted: Thu Sep 23, 2004 12:32 pm Post subject: Quelltext kommentieren... |
|
|
Ich bin gerade dabei ein paar kleine Tools für mich in C++ zu erstellen.
Da ich das ganze aber doch recht professionel machen will ,frage ich
mich wie und wo kommentiere ich meinen Quelltext.
Die Fragen lauten im einzelnen
Kommentiere ich MEthoden und Members (Klassenvariablen) oder nur die
Methoden ?
Wo kommentiere ich die Methoden / Members im .cpp oder im .h ?
Wie sieht so ein MEthoden Kommentar aus ? Alle Parameter genau
dokumentieren oder nur eine kurze Beschreibung..
Soll ich einen "aufwendigne" Text Header (wie bei manchen GPL Progrs) in
jedes File schreiben, das die Funktion und Arbeitsweise der KLasse genau
beschreibt, oder einfach nur eine Zeile mit kurzem Kommentar
Wie kommentiert und dokumentiert ihr euren Quelltext
vielen dank schonmal !!
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
Thomas Dorner Guest
|
Posted: Thu Sep 23, 2004 3:51 pm Post subject: Ort für inline Methoden [war: Quelltext kommentieren...] |
|
|
Hallo Stefan!
SR>Der Nachteil ist, dass inline- und abstrakte Methoden in der .cpp nicht
SR>auftauchen und daher auch nicht (jedenfalls nicht ganz so einfach)
SR>kommentiert werden können, diese dokumentiere ich daher meistens in der
SR>Klassendefinition.
Für inline Methoden finde ich die Lösung bei uns in der Firma ganz
elegant, gemäß Richtlinien gehören inline Methoden in eine eigene
Include-Datei (über die Endung .ipp kann man streiten . Das hat
zwei Vorteile:
1. sind Deklaration und Implementierung sauber getrennt und
2. ermöglicht es einem einen ein einigermaßen schnelle Methode, die
inline Methoden im Debugger mit einem Breakpoint zu versehen
(zugegebenermaßen hat es etwas von Hacking an sich, ist aber
schnell erledigt):
- inline Include bei allen Aufrufern auskommentieren und
- in der eigenen Implementierungsdatei wie folgt klammern:
#define inline
#include "xyz.ipp"
#undef inline
Viele Grüße, Thomas
--
From-Adresse wird nicht genutzt, Reply-To Adresse gilt nur 4 Wochen!
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
Georg Maaß Guest
|
Posted: Sat Sep 25, 2004 2:49 pm Post subject: Re: Quelltext kommentieren... |
|
|
Bjoern Wolter wrote:
| Quote: | Wo kommentiere ich die Methoden / Members im .cpp oder im .h ?
|
Alles was public oder protected ist, sollte bei der Deklaration
dokumntiert werden, denn schließlich muß der Anwender der Blackbox
wissen, wie er mit der Blackbox arbeiten muß bzw. wie sie sich
ihmgegenüber verhält.
Im Implementierungsteil ist zu dokumentieren, wie sich die Details
verhalten (sollen), so daß jemandem, der das Teil weiterpfelegen oder
verifizieren möchte, möglich ist, zu vergleichen, ob das, was Dein
Kommentar beschreibt, und das, was das C++ beschreibt, übereinstimmen.
| Quote: | Wie sieht so ein MEthoden Kommentar aus ? Alle Parameter genau
dokumentieren oder nur eine kurze Beschreibung.
|
Ich schrecke nicht einmal vor ASCII-Art im Quelltext zurück.
| Quote: | Soll ich einen "aufwendigne" Text Header (wie bei manchen GPL Progrs) in
jedes File schreiben, das die Funktion und Arbeitsweise der KLasse genau
beschreibt, oder einfach nur eine Zeile mit kurzem Kommentar
|
Du hast wahrscheinlich den GCC der dritten Generation im Blick, bei dem
das so gemacht ist und erhblich zum Verständnis, was da abgeht beiträgt.
| Quote: | Wie kommentiert und dokumentiert ihr euren Quelltext
|
Sowohl mit Kopf, wie auch zusätzlich in jeder Zeilen sowie vor jedem
Abschnitt. Das Verhältnis Kommentar zu Code liegt bei mir üblicherweise
in der Größenordnung 50:50 bis 70:30. Spätestens nach dem ersten
Surprise (unexpected behaviour), werden aus Faulheit vernachlässigte
Kommentare nachgereicht.
--
Georg Maaß - bioshop.de D-76227 Karlsruhe, Westmarkstraße 82
HTML, XML / JavaScript, C++, Java, PHP, VB / CGI, JSP, ASP, ASP.net
- The ultimate DHTML engine: http://gml-modul.sourceforge.net -
http://sourceforge.net/projects/gml-modul
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
Torsten Robitzki Guest
|
Posted: Sat Sep 25, 2004 8:24 pm Post subject: Re: Quelltext kommentieren... |
|
|
Georg Maaß wrote:
| Quote: | Im Implementierungsteil ist zu dokumentieren, wie sich die Details
verhalten (sollen), so daß jemandem, der das Teil weiterpfelegen oder
verifizieren möchte, möglich ist, zu vergleichen, ob das, was Dein
Kommentar beschreibt, und das, was das C++ beschreibt, übereinstimmen.
|
Ich glaube nicht, das man Implementierungen deswegen kommentiert, damit
später jemand überprüfen kann, ob der Kommentar mit dem Code zusammen
passt . Meiner Erfahrung nach tut er es selten und dann stellt sich
die Frage, oder Kommentar oder Kode falsch ist. Kode der kommentiert
werden muß, hat meiner Meinung nach ein Problem. Damit meine ich nicht
Schnittstellendokumentationen, die Sinnvollerweise im Kode in Form eines
Kommentars hinterlegt sind.
mfg Torsten
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
Nicolas Pavlidis Guest
|
Posted: Sun Sep 26, 2004 10:30 am Post subject: Re: Quelltext kommentieren... |
|
|
Bjoern Wolter <bjabcoern (AT) wolter-familie (DOT) de> writes:
| Quote: | Ich bin gerade dabei ein paar kleine Tools für mich in C++ zu erstellen.
Da ich das ganze aber doch recht professionel machen will ,frage ich
mich wie und wo kommentiere ich meinen Quelltext.
Die Fragen lauten im einzelnen
Kommentiere ich MEthoden und Members (Klassenvariablen) oder nur die
Methoden ?
|
Ich kommentiere immer alles. Es koennte ja sein, das jemand anderes
meinen Source weiterpflegen muss, und entweige Projketmitglieder, sollen
ja auch verstehen was wo passiert.
| Quote: | Wo kommentiere ich die Methoden / Members im .cpp oder im .h ?
|
Am besten im Headerfile. Im .cpp - File sollten nur
Implementierungsdeteils im laufenend code (erklaerend) dokumeniert
werden, allerdings sollten sich solche Kommentare IMHO in Grezen halten.
| Quote: | Wie sieht so ein MEthoden Kommentar aus ? Alle Parameter genau
dokumentieren oder nur eine kurze Beschreibung..
|
So genau wie erforderlich. Wenns eine get* Mehtode ist, reicht wohl eine
ein Staz beschreibung und wennst willst noch ein @return dazu. Parameter
sollten immer dokumeniert werden, weiters moegliche Exceptions die
fliegen koennten, manche Dokumentieren sogar erwartete Vorbedingungen
und alle moeglichen Nachbedingungen nach dem Mehtodenaufruf.
| Quote: | Soll ich einen "aufwendigne" Text Header (wie bei manchen GPL Progrs)
in jedes File schreiben, das die Funktion und Arbeitsweise der KLasse
genau beschreibt, oder einfach nur eine Zeile mit kurzem Kommentar
|
Klassen sollten immer so genau als moeglich beschriben werden, vorallem
was sie tun, und wie ich sie verwenden kann, polymorph oder nicht,
generisch oder nicht ud so weiter.
| Quote: | Wie kommentiert und dokumentiert ihr euren Quelltext
|
Ich kommentiere wie folgt:
Namespaces: Kurze Beschreibung der Arten von Klassen die sich in
aktuellen namespace befinden koennten
Klassen: Beschreibung der Klasse, in Bezug auf:
Gedachten Verwendungszweck
Ob sie polymorph verwendet werden kann/soll
Ob sie parameteriesiert werden kann, wenn ja werden auch
alle Templateparameter dokumentiert
Zusatetzlich wird noch der Name des Autors dazugeschrieben
und falls sich das Projekt auf einem CVS Server befindet,
auch die Versionsnummer.
Methoden: Kommt wieder auf den Typ an, bei trivialen methoden wie
allen get* Mehtoden, kurze beschreibuing was retuniert
wird, sonst genauere Beschreibung, mit allen Parametern
und etwaigen Exceptions die geflogen kommen koennten.
Members: Kurze Beschreibung was sie darstellen
Konstanten: Wie Members
Typedefs: Wie Members
LG
Nicolas
--
| Quote: | Nicolas Pavlidis | Elvis Presly: | |__ |
Student of SE & KM | "Into the goto" | |__| |
[email]pavnic (AT) sbox (DOT) tugraz.at[/email] | ICQ #320057056 | |
-------------------University of Technology, Graz----------------|
|
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
Georg Maaß Guest
|
Posted: Sun Sep 26, 2004 3:03 pm Post subject: Re: Quelltext kommentieren... |
|
|
Torsten Robitzki wrote:
| Quote: | Kode der kommentiert
werden muß, hat meiner Meinung nach ein Problem.
|
Umgekehrt. Code, der keines Kommentars bedarf ist so trivial, daß er
überflüssig ist, weil man ihn eh im Kopf hat. In dem Augenblick, da der
Code nicht mehr trivial ist, bedarf er eines Kommentars.
--
Georg Maaß - bioshop.de D-76227 Karlsruhe, Westmarkstraße 82
HTML, XML / JavaScript, C++, Java, PHP, VB / CGI, JSP, ASP, ASP.net
- The ultimate DHTML engine: http://gml-modul.sourceforge.net -
http://sourceforge.net/projects/gml-modul
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
Georg Maaß Guest
|
Posted: Sun Sep 26, 2004 3:07 pm Post subject: Re: Quelltext kommentieren... |
|
|
Nicolas Pavlidis wrote:
| Quote: | Ich kommentiere immer alles. Es koennte ja sein, das jemand anderes
meinen Source weiterpflegen muss, und entweige Projketmitglieder, sollen
ja auch verstehen was wo passiert.
|
Das entdecken sie auch durch reine Code-Analyse. Aber, warum es so
gemacht wird, wie es gemacht ist, das können sie nur aus Deinem
Kommentar herauslesen. Diese Information aber ist wichtig, um
entscheiden zu können, ob eine Implementierungsänderung als Nebeneffekt
frei angenommen werden darf.
--
Georg Maaß - bioshop.de D-76227 Karlsruhe, Westmarkstraße 82
HTML, XML / JavaScript, C++, Java, PHP, VB / CGI, JSP, ASP, ASP.net
- The ultimate DHTML engine: http://gml-modul.sourceforge.net -
http://sourceforge.net/projects/gml-modul
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
Stefan Reuther Guest
|
Posted: Sun Sep 26, 2004 8:56 pm Post subject: Re: Quelltext kommentieren... |
|
|
Torsten Robitzki wrote:
| Quote: | Georg Maaß wrote:
Im Implementierungsteil ist zu dokumentieren, wie sich die Details
verhalten (sollen), so daß jemandem, der das Teil weiterpfelegen oder
verifizieren möchte, möglich ist, zu vergleichen, ob das, was Dein
Kommentar beschreibt, und das, was das C++ beschreibt, übereinstimmen.
Ich glaube nicht, das man Implementierungen deswegen kommentiert, damit
später jemand überprüfen kann, ob der Kommentar mit dem Code zusammen
passt . Meiner Erfahrung nach tut er es selten und dann stellt sich
die Frage, oder Kommentar oder Kode falsch ist.
|
Kenn ich :-(
| Quote: | Kode der kommentiert werden muß, hat meiner Meinung nach ein Problem.
|
Nicht wirklich. Ich setze Kommentare im Code (also nicht die
Schnittstellenbeschreibung für doxygen) für zwei Dinge ein:
- Strukturierung. In einer linearen 100-Zeilen-Funktion die Teile
trennen. Klar, man könnte die Funktion in Unterfunktionen zerlegen,
das ist aber oft Overkill (z.B. wenn die danach aufzurufenden
Unterfunktionen dann jeweils 15 Parameter bekommen müssten).
- Erläuterung über das 'warum' (das 'wie' zeigt ja der Code).
Bei komplizierten Asserts also z.B. eine kurze Begründung, warum
dieser Assert hier steht. Oder Erläuterung von nichttrivialen
Optimierungen. Oder Begründung für nicht-offensichtliche
Codestücke ("Workaround für einen Bug in Version 0.0.2").
Stefan
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
Nicolas Pavlidis Guest
|
Posted: Mon Sep 27, 2004 9:09 am Post subject: Re: Quelltext kommentieren... |
|
|
Georg Maaß <georg (AT) bioshop (DOT) de> writes:
| Quote: | Torsten Robitzki wrote:
Kode der kommentiert werden muß, hat meiner Meinung nach ein Problem.
Umgekehrt. Code, der keines Kommentars bedarf ist so trivial, daß er
überflüssig ist, weil man ihn eh im Kopf hat. In dem Augenblick, da
der Code nicht mehr trivial ist, bedarf er eines Kommentars.
|
IMHO sollte Code aber so geschrieben sein, dass er keines Kommentars
bedarf. Sobald ich im Implementierungsteil was kommentieren muss, denke
ich mir das das sonst keiner versteht, dann sollte ich mir Gedanken
darueber machen, ob nicht vielliecht einfacher und "offendichtlicher"
geht.
LG
Nicolas
--
| Quote: | Nicolas Pavlidis | Elvis Presly: | |__ |
Student of SE & KM | "Into the goto" | |__| |
[email]pavnic (AT) sbox (DOT) tugraz.at[/email] | ICQ #320057056 | |
-------------------University of Technology, Graz----------------|
|
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
Andre Poenitz Guest
|
Posted: Mon Sep 27, 2004 7:35 pm Post subject: Re: Quelltext kommentieren... |
|
|
Bjoern Wolter <bjabcoern (AT) wolter-familie (DOT) de> wrote:
| Quote: | Ich bin gerade dabei ein paar kleine Tools für mich in C++ zu erstellen.
Da ich das ganze aber doch recht professionel machen will ,frage ich
mich wie und wo kommentiere ich meinen Quelltext.
Die Fragen lauten im einzelnen [...]
Wie kommentiert und dokumentiert ihr euren Quelltext
|
Die Masse hat eine (oder selten zwei, drei, ...) Zeilen Kommentar im .h.
Ansonsten gibt's Kommentare eher aperlich in der Implementaion, vor
allem bei nicht offensichtlichen Sachen.
Von extensiven Funktions-"Header"-Kommentaren bzw. Kommentierung jeder
Anweisung (ja, solche Richtlinien gibt's auch...) halte ich persoenlich
nicht viel.
Andre'
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
Andre Poenitz Guest
|
Posted: Mon Sep 27, 2004 7:38 pm Post subject: Re: Quelltext kommentieren... |
|
|
Georg Maaß <georg (AT) bioshop (DOT) de> wrote:
| Quote: | Torsten Robitzki wrote:
Kode der kommentiert
werden muß, hat meiner Meinung nach ein Problem.
Umgekehrt. Code, der keines Kommentars bedarf ist so trivial, daß er
überflüssig ist, weil man ihn eh im Kopf hat. In dem Augenblick, da der
Code nicht mehr trivial ist, bedarf er eines Kommentars.
|
void do_for_all()
{
for_each(begin(), end(), do_for_one());
}
bedarf meiner Meinung nach keines Kommentars.
Andre'
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
kanze@gabi-soft.fr Guest
|
Posted: Tue Sep 28, 2004 9:58 am Post subject: Re: Quelltext kommentieren... |
|
|
Georg Maaß <georg (AT) bioshop (DOT) de> wrote
| Quote: | Nicolas Pavlidis wrote:
Ich kommentiere immer alles. Es koennte ja sein, das jemand anderes
meinen Source weiterpflegen muss, und entweige Projketmitglieder,
sollen ja auch verstehen was wo passiert.
Das entdecken sie auch durch reine Code-Analyse. Aber, warum es so
gemacht wird, wie es gemacht ist, das können sie nur aus Deinem
Kommentar herauslesen. Diese Information aber ist wichtig, um
entscheiden zu können, ob eine Implementierungsänderung als
Nebeneffekt frei angenommen werden darf.
|
Das Warum ist wohl die Hauptsache bei der Kommentierung der
Implementierung. Dazu finde ich es ab und zu nutzbar, zu kommentieren,
was ich nicht gemacht hat. Fehlt zum Beispiel einen Test einer
Randbedingungen, dann beschreibe ich, warum dieser Test hier nicht nötig
ist. Als einfaches Beispiel: schreibe ich:
for ( int i = 0 ; ! found ; ++ i )
statt
for ( int i = 0 ; i < count && ! found ; ++ i )
dann ist ein Kommentar gefordert, um zu erklären, warum ich nicht um das
Arrayende überprüfen.
--
James Kanze GABI Software http://www.gabi-soft.fr
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
Torsten Robitzki Guest
|
Posted: Tue Sep 28, 2004 5:57 pm Post subject: Re: Quelltext kommentieren... |
|
|
Georg Maaß wrote:
| Quote: | Torsten Robitzki wrote:
Kode der kommentiert werden muß, hat meiner Meinung nach ein Problem.
Umgekehrt. Code, der keines Kommentars bedarf ist so trivial, daß er
überflüssig ist, weil man ihn eh im Kopf hat. In dem Augenblick, da der
Code nicht mehr trivial ist, bedarf er eines Kommentars.
|
Ok, das funktioniert aber nur, wenn die Compiler langsam mal
anfangen mit zu denken. Dann kann man den trivialen Teil sicher weg lassen.
mfg Torsten
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|