Codierstandard ◦ Überblick ◦ ?

Ein Codierstandard soll die Qualität des Code, insbesondere seine Leserlichkeit und Effizienz, verbessern und so vor allem die Modularisierungs-, Test- und Wartungsbemühungen unterstützen. Die folgenden Faustregeln erheben keinen Anspruch auf Vollständigkeit und sind allgemein. Sie werden die Regeln deshalb an Ihre Entwicklungsumgebung, insbesondere an die verwendete Programmiersprache, anpassen müssen.

#### Namenskonventionen

Über die Vor- und Nachteile formale Benennungskonventionen lässt sich streiten. Wichtig ist, dass die vergebenen Bezeichner gut leserlich sind und die Konvention von allen Entwicklern akzeptiert wird.

- Verwende deutsche Namen, um benutzerdefinierte Namen von systemdefinierten abzugrenzen

- Strebe nach Kürze, ohne die Leserlichkeit zu verschlechtern

- Verwende selbsterklärende Namen

- Sei so explizit wie möglich (Bsp. arithmetischesMittel statt Mittel)

- Klassenbildende präfixe und Postfices können die Verständlichkeit verbessern
  (z.B. pub_ vor einem Public-Bezeichner)

- Verwende standardisierte Abkürzungen (z.B. fmt für Format)

#### Kommentar

- Füge Kommentare während der Entwicklung ein und nicht erst im Endprodukt

- Führe Kommentare laufend nach (Kommentar und Code sollen sich entsprechen)

- Leite umfangreiche Module (Unterprogramme) durch einen Modulkopf ein

- Kommentiere grössere Codeänderungen

- Kommentiere globale Variablen

- Kommentiere das Ende einer unübersichtlichen Schleife

- Verwende für kurze Bemerkungen Endzeilenkommentare

#### Leserlichkeit

- Codiere nicht vorschnell

- Vermeide übergrosse Module

- Verwende wenn möglich nur eine Zeile pro Anweisung

- Halte den gleichen Einrückungsabstand ein (z.B. zwei Leerstellen)

- Verwende Sprungbefehle wie goto und exit sparsam

#### Portabilität

Portabler Code lässt sich später - unabhängig von der aktuellen Anwendung - wieder verwenden.

- Implementiere wenn möglich Klassenmodule

- Beachten die Modularisierungsregeln

- Benannte Konstanten verbessern die Leserlichkeit und erleichtern Programmanpassungen

- Vermeide Abweichungen vom Sprachstandard (z.B. in SQL)

- Isoliere und kommentiere nicht-portablen Code (z.B. compiler- oder umgebungsabhängigen Code)

Eine Entwicklungsumgebung kann die Wiederverwendung von Code durch ein Versionskontrollsystem (zum Beispiel MS Visual SourceSafe) und Codebibliotheken erleichtern. Ein Versionskontrollsystem speichert aufeinanderfolgende Codeversionen in einer Datenbank und unterstützt so die Integration von Code verschiedener Entwickler. Eine Codebibliothek lässt Sie Codefragmente wiederfinden, die andere Entwickler zur Wiederverwendung in einer Datenbank gespeichert haben (siehe auch Wiederverwendung von Code).

#### Laufzeitfehler

- Vereinbare Variablen und benannte Konstanten explizit

- Initialisiere immer explizit (auch wenn eine Variable automatisch auf 0 gesetzt wird)

- Prüfe die Validität von Eingaben

- Berücksichtige beim Vergleich reeller Variablen ihre beschränkte Genauigkeit

- Verwende für einen Read-Only-Parameter einen by value-Aufruf

- Verwende globale Variablen sparsam

- Formatiere Fehlermeldungen konsistent

- Zeige in Fehlermeldungen den Fehlerort an (z.B. den Prozedurnamen)

- Unterscheide verschiedene Fehlerklassen

- Gib Hinweise zur Fehlerbehebung

#### Gestaltung der Benutzeroberfläche

- Versetze Dich in die Lage des Endbenutzers

- Gib Hilfe kontextsensitiv

- Lasse den Benutzer Voreinstellungen ändern

- Bemühe Dich um Konsistenz

#### Codeoptimierung

- Opfere die Klarheit nicht der Effizienz

- Optimiere mehrfach durchlaufene Programmteile (vor allem Schleifencode)

- Speichere Ergebnisse komplexer Berechnungen

- Ziehe - wenn möglich - ganzzahlige Variablen reellen vor

- Entferne Anweisungen, die sich nicht ändern, aus Schleifen