[Dune] Coding Style
Peter Bastian
Peter.Bastian at iwr.uni-heidelberg.de
Tue Nov 18 13:03:45 CET 2003
Oliver Sander wrote:
> - Namensgebung
> - Variablen
> Olis Vorschlag: nur Buchstaben und Zahlen, erster Buchstabe
> klein, dann der erste Buchstabe eines neuen Wortes groß.
> z.B. elementCounter
> - Typen
> OV: Wie Variablen, aber mit einem Großbuchstaben am Anfang
> - Makros (seufz)
> OV: So sie denn sein müssen: Alles groß
> - Dateien
> OV: Nur Buchstaben, alle kleingeschrieben. Header mit .hh,
> Implementierungen mit .cc
> - Templateparameter
> OV: Wie Makros
> - #define __HEADER_HH__ (ihr wisst schon)
> Namensregeln für diese defines?
>
find ich gut
> - Einrückungen etc.
> OV: Vier Leerzeichen pro Stufe. Nach einem 'for', 'if' o.ä.
> kommt die geschweifte Klammer auf die gleiche Zeile.
> Kommt nach dem 'for' nur ein Befehl, so kommt er *nicht*
> auf die gleiche Zeile.
>
Mir ist (fast) jede Regelung hier recht. Ich fände es schön, wenn der
ganze code sollte nach den gleichen Regeln formatiert wäre. Etwa so:
- jemand erfindet ein .emacs file mit den Regeln drin
- Für die, die nicht emacs verwenden gibt es ein Programm durch das man
den code jagen kann. Gibts das?
> - Exceptions:
> OV: Ja, bitte!
>
> - Doxygen
> OV: Man sollte *alles* dokumentieren! Insbesondere die
> Parameter (mit @param), denn Rückgabewert, Exceptions
> und (wichtig) die Templateparameter.
> Weiterhin schlage ich folgende Regel vor: Natürlich
> schreibt man dauernd irgendwelchen Krams und hat dann
> keine Zeit/Lust das ganze sinnvoll zu dokumentieren.
> In diesem Fall sollte man (unbedingt) das betreffende
> Objekt mit einem /** \todo Please doc me! */ versehen.
> So ist wenigstens die Abwesenheit von Dokumentation
> zentral dokumentiert.
>
Ist vollkommen richtig. Der Herr gebe mir die nötige Zeit ...
> - Benutzung von 'assert'
> OV: Spricht da was dagegen?
>
Nein, oder?
> - enum vs. static const
> Im moment werden viele Konstanten in Templateklassen mit
> enum {CONSTANT=Value}; definiert. Ich persönlich finde
> eigentlich static const int CONSTANT = value; etwas
> lesbarer. Was meint ihr?
>
static const finde ich auch besser. Kann jemand das mit dem
Speicherverbrauch testen. Kann doch nicht sein, dass der Compiler das
nicht wegomptimiert.
> - Bildschirmausgabe
> Wie macht man sowas? Mit printf? Oder mit Streams? Oder
> will man sich selber was schreiben (wie z.B. UserWriteF
> in UG), das man dann automatisch in ein Logfile umleiten
> kann?
>
Ja, so eine Stream-Klasse mit log-file Umleitung wäre klasse.
Grüße
-- Peter
------------------------------------------------------------------
Peter Bastian, IWR,Uni Heidelberg, INF 348,R 020, 69120 Heidelberg
email: Peter.Bastian at iwr.uni-heidelberg.de Tel: +49 6221 54 4984
WWW: http://www.iwr.uni-heidelberg.de/~Peter.Bastian Fax: ... 8860
More information about the Dune
mailing list