C++ Code Konventionen#

Code soll gut-strukturiert und dokumentiert sein. Erst dies ermöglicht es, weiter mit diesem Code zu arbeiten, ihn zu warten oder anzupassen. Dazu soll zum einen der Code entsprechend aufgebaut sein und in Funktionen und Klassen mit klaren Aufgaben und Strukturen gegliedert sein. Dann aber auch gut verständlich sein – durch ausreichend Kommentare aber auch eine einheitliche Gestaltung.

Einheitlichkeit hilft hier dem Leser. Es gibt vers. Guidelines (und in Unternehmen dazu meist spezielle Festlegungen). Diese hier sollen beispielhaft Orientierung geben und dann aber Maßstab für die Abgabe sein.

Namen#

Wählen Sie aussagekräftige Bezeichner, dies erleichtert das lesen und der Zweck jeder Variablen und Funktion ist direkt dokumentiert.

  • Nomen für Variablennamen: Für Variablen lautet die Frage “Was ist es?” Verwenden Sie ein Nomen (name, score) und wenn möglich ergänzt zur Klärung (courseName, maxScore). Wiederholen Sie nicht den Variablentyp in ihrem Namen.

  • Verben für Funktionsnamen: Bei Funktionen lautet die Frage “Was tut sie?” Funktionen, die Aktionen ausführen, werden am besten durch Verben identifiziert (findSmallest, stripPunctuation, drawTriangle). Funktionen, die hauptsächlich für ihren Rückgabewert verwendet werden, werden nach der zurückgegebenen Eigenschaft benannt (isPrime, getAge).

  • Verwenden Sie CamelCase für Klassennamen (beginnend mit Großbuchstaben) und Funktionen (beginnend mit Kleinbuchstaben). Zum Beispiel: MyClassName, myFunctionName.

  • Verwenden Sie benannte Konstanten: Vermeiden Sie das Verstreuen von magischen Zahlen in Ihrem Code. Deklarieren sie stattdessen einen benannten Konstantenwert und verwenden Sie ihn dort, wo dieser Wert benötigt wird. Dies erleichtert die Lesbarkeit und gibt Ihnen einen Ort, an dem Sie den Wert bearbeiten können, wenn dies erforderlich ist.

  • Verwenden Sie snake_case für Variablennamen. Zum Beispiel: my_variable_name.

  • Verwenden Sie keine Unterstriche am Anfang oder Ende von Namen.

  • Vermeiden Sie Single-Letter-Namen, es sei denn, sie haben eine sehr spezifische Bedeutung. Zum Beispiel, verwenden Sie allgemein bekannte Abkürzungen wie i, j, k als Schleifenindizes.

Formatierung#

Verwenden Sie 4 Leerzeichen für Einrückungen, kein Tab. Verwenden Sie keine überlangen Zeilen. Eine maximale Zeilenlänge von 80 Zeichen ist empfehlenswert. Verwenden Sie eine leere Zeile zwischen Funktionsdefinitionen und zwischen Klassenmethoden. Verwenden Sie leerzeichen um Operanden und Operatoren voneinander zu trennen. Zum Beispiel: int sum = a + b; Kommentare

Schreiben Sie Kommentare, um den Code zu erklären, insbesondere für komplizierte oder nicht offensichtliche Teile. Vermeiden Sie redundante Kommentare, die den offensichtlichen Code erklären. Verwenden Sie Englisch für Kommentare. Variablen

Initialisieren Sie Variablen bei der Deklaration, wenn möglich. Verwenden Sie den Typ auto, wenn der Typ der Variablen aus dem Kontext ersichtlich ist. Verwenden Sie const-Qualifizierungen, um Variablen als unveränderlich zu kennzeichnen, wenn möglich. Bedingungen und Schleifen

Verwenden Sie geschweifte Klammern, auch wenn der Codeblock nur eine Anweisung enthält. Setzen Sie einen Spatium nach der if, else if und while Anweisungen. Zum Beispiel: if (condition) { … } Funktionen

Definieren Sie die Funktionen am Anfang der Datei oder in einer separaten Header-Datei. Verwenden Sie const-Referenzen als Parameter, um unnötige Kopien zu vermeiden. Verwenden Sie Referenzen als Parameter, wenn die Funktion den Wert ändern soll. Vermeiden Sie das Überladen von Funktionen, wenn möglich.