Du bist hier: Startseite > Wissenswertes > Richtigen Programmierstil wählen

Richtigen Programmierstil wählen

Programmierstil

Projekte in denen nicht formatierter Quellcode, Klassen- Funktions- und Variablen Namen die einfach von vorne bis hinten keinen Sinn haben vorkommen, sind von Anfang an zum Scheitern verurteilt!

Daher ist es wichtig, dass du dir einen gewissen Standart aneignest was dein Stil sowie die Formatierung deines Codes angeht. Zudem spielt die Namesvergabe von allen Elementen eine wichtige Rolle. Den sie alleine entscheidet, ob du irgendwann wenn dein Programm mal gewachsen ist überhaubt noch einen Durchblick hast. Da C++ es sehr genau mit der Datentyp Zuweisung nimmt, musst du direkt von Anfang an ein System haben. Deine Einrücktiefe sollte optimalerweise 4 Leerzeichen oder 1 Tabulator betragen.

Der Einrückungsstil:

  1. if (x < foo(y, z)) {
  2. qux = bar[4] + 5;
  3. } else {
  4. while (z) {
  5. qux += foo(z, z);
  6. z--;
  7. }
  8. return ++x + bar();
  9. }

Der hier gezeigte ist 1TBS. Der Name 1TBS kommt aus dem Hacker-Jargon und steht für „One True Brace Style“, was übersetzt soviel bedeutet wie „einzig wahrer Klammern-Stil“. Der Name bezieht sich darauf, dass dieser Stil von den C-Erfindern Brian W. Kernighan und Dennis Ritchie definiert wurde. Auch die Code Conventions von Linus Torvalds für Linux schlagen diesen Stil vor. Die Abstände betragen 4 Leerzeichen was eine Tabulator Länge ist.

Die Positionierung der öffnenden Klammern am Zeilenende ist gleichermaßen beliebt wie verhasst. Mit schlechten Entwicklungswerkzeugen besteht bei Unachtsamkeit die Gefahr, öffnende Klammern zu übersehen und schließende zu vergessen.

Der nächste Stil der auch weit unter Programmierern verbreitet ist, nennt sich Allman / BSD / „East Coast“ Dieser Stil wurde nach Eric Allman benannt, der eine Vielzahl an BSD-Werkzeugen geschrieben hat, weshalb dieser Stil auch nicht ganz korrekt BSD-Stil heißt.

  1. int f(int x, int y, int z)
  2. {
  3. if (x < foo(y, z))
  4. {
  5. qux = bar[4] + 5;
  6. }
  7. else
  8. {
  9. while (z)
  10. {
  11. qux += foo(z, z);
  12. z--;
  13. }
  14. return ++x + bar();
  15. }
  16. }

Wie dir sicher aufgefallen ist, wird dir dieser Stil auf der ganzen Seite hier entgegen kommen. Ich habe mir diesen Stil vor Jahren in mehreren Sprachen angeeignet und bin sehr zufrieden damit. Er ist gut und übersichtlich lessbar- auch nach 20 Stunden noch! In Entwickler-Teams wirst du immer einen von beiden Stilen antreffen.

Es gibt natürlich noch mehr! Mit dem Horstmann oder Whitesmith Stil z.B. wirst du dich sehr unbeliebt machen :)

Quelltextformatierung

Als Quelltextformatierung bezeichnet man die Formatierung eines Quelltexts nach bestimmten Regeln. Zweck ist das Verbessern der Programmcode-Lesbarkeit, die eigentliche Funktionalität der Programme ist davon nicht betroffen.

Wenn du dich an deinen Stil gehalten hast, dann dürfte dein Quelltext ja aufgeräumt sein. Du musst nur darauf acht geben wenn du was veränderst.

  • Vereinheitlichung der Einrückung, Einhaltung eines bestimmten Einrückungsstils
  • Entfernen oder Hinzufügen von Blöcken bei modifizierenden Anweisungen wie if, else, for, while, do, usw.
  • Konsequent einheitliche Positionierung der {} für Blöcke
  • Einfügen von () gemäß der Operatorpriorität bei Operatoren mit allgemein unklarer Priorisierung

Weiter fortgeschrittene Algorithmen für Quelltextformatierung beherrschen außerdem:

  • Ergänzung von Rümpfen für Dokumentationskommentare
  • Übernahme von Aufgaben von Code-Analysewerkzeuge, bis hin zum Vorschlag von Refaktorierungen