Clean Code - Warum sollte jeder Entwickler kontinuierlich Clean Code praktizieren?

Gerade ältere und große Softwaresysteme bleiben über Jahre im Einsatz und wachsen kontinuierlich weiter: Sie werden ständig geändert, gewartet und um Funktionalität erweitert. Dies birgt die Gefahr der Erosion in sich.

In gewachsenen Softwareprojekten ändert sich die Architektur, verwendete Tools und Hilfsmittel werden ausgetauscht. Es entstehen teilweise verwaiste Code-Schnipsel, die entweder nicht mehr verwendet und damit gelöscht werden können oder die an andere/bessere Positionen innerhalb der Architektur verschoben werden sollten.

Darunter leidet die Qualität der Systeme. Selbst kleinere Änderungen an der Software müssen mit großem Aufwand bewältigt werden. Und nach Anpassung des Sourcecode ist man immer noch nicht sicher, ob das System sich immer noch überall richtig verhält.

Mit Clean Code kann man dieser Entwicklung entgegenwirken und sie vermeiden.

Clean Code beschreibt Prinzipen, Praktiken und Pattern zum Schreiben des Codes. Dazu gehört z.B.:

  • Sinnvolle Variablen- und Methoden-Bezeichnungen sind sprechend und helfen beim Lesen des Codes.
  • Jede Methode, Klasse oder Modul erfüllt nur eine Aufgabe.
  • Der Code wird einfach und damit gut lesbar gehalten. Das bedeutet, dass Methoden, Klassen und Module möglichst klein und wenig verschachtelt und damit übersichtlich gehalten werden sollten.
  • Es gibt keine Code-Dubletten.
  • Jede Methode hat genau einen Ausgang.
  • Alle Tests des Systems laufen fehlerfrei.
  • Einheitliches Error-Handling ist vollständig implementiert.

Um das zu erreichen, gibt es „Clean Code Developer“, eine Initiative für mehr Professionalität in der Softwareentwicklung. Clean Code Developer (CCD) entwickeln sich stufenweise in einem Gradesystem. Ein Entwickler, der sich für Clean Code interessiert, aber noch nicht weiß, wie er mit „sauberem Code“ anfangen soll, arbeitet im schwarzen Grad. Die nachfolgenden Grade rot, orange, gelb, grün, blau und weiß symbolisieren weitere Stufen. In jeder Stufe werden dabei konkret definierte Prinzipien und Praktiken angewandt.  Weitere Informationen dazu gibt es auf der Seite https://clean-code-developer.de/.