misc:programming_style
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | Last revisionBoth sides next revision | ||
misc:programming_style [2018/11/15 16:06] – removed michfiel | misc:programming_style [2018/11/15 16:07] – created michfiel | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | < | ||
+ | Als Amtssprache ist Denglisch festgelegt. | ||
+ | As office language is english fixed layed. | ||
+ | |||
+ | Quelltext wird durchgängig strukturiert mit Trennlinien in Form von exakt 80 Querstrichen: | ||
+ | //////////////////////////////////////////////////////////////////////////////// | ||
+ | //////////////////////////////////////////////////////////////////////////////// | ||
+ | //////////////////////////////////////////////////////////////////////////////// | ||
+ | Generische Klassen-Templates sind selbsterklärend und sollten nicht dokumentiert | ||
+ | werden. Die Initialisierung einer Integer-Variablen hingegen bedarf ausführlichen | ||
+ | Kommentars: | ||
+ | int i = 0; // set i to zero | ||
+ | //////////////////////////////////////////////////////////////////////////////// | ||
+ | Initialisierungen werden durchweg in Konstruktor Syntax vorgenommen. Das macht bei simplen | ||
+ | Datentypen zwar keinen wirklichen Unterschied, | ||
+ | int i( 0 ); // call integer ctor to initialize i to zero | ||
+ | //////////////////////////////////////////////////////////////////////////////// | ||
+ | Leerschritte gehören nicht zwischen Schlüsselwort und Klammer, sondern umschließen der | ||
+ | speziellen Ästhetik wegen den Klammerinhalt: | ||
+ | if( 1 ) | ||
+ | //////////////////////////////////////////////////////////////////////////////// | ||
+ | Aus selbigen Grund werden Kommas in Parameterlisten an den Anfang gestellt: | ||
+ | foo( int i | ||
+ | , int j | ||
+ | , int k ) | ||
+ | //////////////////////////////////////////////////////////////////////////////// | ||
+ | Bedingte Kompilierschalter sind parallel zum Quellcode pseudo-syntaktisch eingerückt, | ||
+ | auch wenn das semantisch nicht wirklich viel Sinn macht: | ||
+ | if { | ||
+ | # if | ||
+ | # else | ||
+ | # | ||
+ | } | ||
+ | else { | ||
+ | } | ||
+ | //////////////////////////////////////////////////////////////////////////////// | ||
+ | Wider der Lesbarkeit, aber zugunsten einer Fehlermeldung bei falschen Operator gehört bei | ||
+ | Vergleichen die Konstante an den Anfang: | ||
+ | if( 0 == test ) | ||
+ | //////////////////////////////////////////////////////////////////////////////// | ||
+ | Zum Training des Gedächtnisses sind für die Namen wichtiger Variablen maximal zwei | ||
+ | Buchstaben zu verwenden: | ||
+ | ComplexityParser *cp; | ||
+ | //////////////////////////////////////////////////////////////////////////////// | ||
+ | Rückgabewerte von Funktionen heißen ausnahmslos " | ||
+ | //////////////////////////////////////////////////////////////////////////////// | ||
+ | //////////////////////////////////////////////////////////////////////////////// | ||
+ | In Reminiszenz an das goldene Zeitalter der Hollerith-Lochkarten ist in die letzte Zeile | ||
+ | jeder Quelltextdatei zwingend das Kürzel " | ||
+ | EOF | ||
+ | |||
+ | </ |