Clean Code GUIDE: Beispiele + simple Erklärungen

Was ist Clean Code?

Clean Code
besteht aus
logisch strukturierten und intuitiv-benannten Variablen und Funktionen,
die jeder mit
Grundwissen der Programmiersprache
in angemessener Zeit
überblicken und verstehen kann.

Wieso soll ich Clean Code schreiben? 6 Gründe gegen schlechten Code

1. Unsauber Code ist teuer

Die Entwicklung und Wartung von größeren Coding-Projekten mit unsauberem Code dauert länger und ist deshalb teuer, da mit unsauberem Code die Zusammenarbeit erschwert und Du den Überblick schnell verloren wirst.

2. Schneller in die Pleite

Softwareunternehmen mussten Ihr Geschäft aufgegeben, weil sie Ihre Fehler nicht rechtzeitig beheben konnten. Der Code war so verwirrend, dass ein Debuggen zeitaufwendig ist. Die Supportverträge sind ausgelaufen und die Kunden wollten die Produkte nicht mehr.

3. Kann die Versetzung bedeuten

Manche Arbeitgeber haben strenge Bennenungskonventionen und Vorschriften, die Du als Programmierer einhalten musst. Falls Du Dich nicht an die Regeln hältst, dann landest Du mit 98 % wahrscheinlich bei der Hotline.

4. Erschwert Dir die Arbeit

Jeder Programmierer kennt es. Bei einem größeren Dokument (ab 500 Zeilen) und schlechtem Code kannst Du den Überblick über die Funktionen und Variablen verlieren. Jedes weitere Feature erschwert die Arbeit enorm.

5. Keiner will Deinen Code lesen oder warten

Wenn ein Nutzer in Dein Programm einen Bug findet, dann ist die Entwicklungsfirma in der Pflicht nachzubessern. Bei solchen Fällen kommt es häufig vor, dass jemand anderes Deinen Code warten soll.

6. Anspruch an Dich

Selbst, wenn Du nicht professionell entwickelst, solltest Du auf Deinen Code achten. Ein Autor darf auch nicht nach Lust und Laune die Charaktere benennen und das Buch schreiben wie er/sie es möchte.

Denke daran: Manchen Entwickler nehmen Clean Code etwas zu ernst und treiben die Codierung auf die Spitze. Dein Clean Code muss nicht 100 % perfekt sein, sondern soll dem Zweck dienen, dass eine andere und Du selbst den Code verstehen und überblicken kann.

Deshalb habe ich einen 3-teiligen Guide  mit vielen Beispielen geschrieben, der Dir zeigt, wie Clean Code aussehen kann.

Das Ideal Clean Code

Überspringen diesen Abschnitt,  wenn Du gleich in die Praxis einsteigen möchtest!

Um zu veranschaulichen, was sauberer Code ist, möchte ich ein vergleichbares Beispiel nennen:

Ein Autor wie King schreibt Bücher, die so gut geschrieben sind, dass der Leser diese (bei genügend Zeit) in einem Fluss lesen kann. Guter Code sollte wie ein gutes Buch sein. Deinen Code ist der Erklärungstext für den Programmierer und dem Computer, wie ein Programm funktioniert.

Was hat Clean Code mit Büchern zu tun?

Ein deutscher / englischer Satz besteht im Wesentlichen aus Nomen, Verben und Adjektiven.

Im Rahmen der Informatik sind

  • Nomen Klassen, Variablen und Objekte (var emloyee,order, seller)
  • Verben sind Funktionen (getOrders(), setName()
  • Adjektive sind Parameter (startTime, endtime).

Vom Deutschen zu Clean Code

Beispielsweise Du möchtest Minuten in Stunden umrechnen.

In Deutsch erklärst Du das so:

  • Berechne die Stundenanzahl, indem man die Minutenanzahl durch 60 teilt, nach unten rundet und die Stundenzahl zurückgibt.
  • Berechne die Minutenanzahl, indem man die Minutenanzahl modulo 60 nimmt und den Wert zurückgibt.

Ein Algorithmus in der Informatik beschreibt eine festgelegte Reihenfolge von Handlungsschritten. „Analoge“ Algorithmen kennst Du aus Kochbüchern oder einer Bauanleitung Deines Schranks.

Motivation – Warum soll ich Clean Code nutzen?

Warum soll ich den Guide lesen? Gehen wir mal von dem Code aus, wie dieser viele Professoren und Dozenten an vielen Universitäten praktizieren:

Da der Code einen geringen Umfang besitzt, kann man die Variablen zuordnen. Wenn aber 100 Variablen und Funktionen nur aus kryptischen Abkürzungen bestehen, dann verlierst Du schnell den Überblick über den Code.

Variablen und Benennung in Clean Code

Eine gute Variable hat 8-24 Zeichen, weil eine zu kurze Variable nicht eindeutig genug ist und eine zu lange schwer lesbar ist.

Manche Firmen schreiben den Programmierern die Benennungen vor und Du musst Dich strikt daranhalten. Wenn Du privat programmierst, solltest Du aber folgende Regeln auch beachten:

Benenne Deine Variablen, Funktionen und Parameter mit Namen, die den exakten Inhalt und Aufgabe genau beschreibt.

Nehme Dir Zeit für die Benennung und finde einen passenden Namen.

Die Benennungsregeln gelten für Dateinamen, Schriftarten, Ordner… Bzw. Alles, was Du benennen kannst.

Eine gute Benennung braucht Zeit bzw. ändere eine Variable, wenn Du einen besseren Namen gefunden hast.

💣Coding Horror - So nicht!

Vermeide "allgmeine" Wörter wie data, string, varaible, information, text, number, json, response,....

👌 Clean Code - So sollte Dein Code aussehen

Klar. Konkret. Verständlich. Der Name ist der Inhalt der Datenstruktur. Sei so spezifisch mit den Namen wie möglich.

Funktionen in Clean Code

Funktionen sind die Verben von gutem Code. Eine Funktionsnamen beschreibt die Tätigkeit, welche die Funktion abarbeitet. Typisch für Funktionsnamen sind Präfixe wie get, set, calc, load, update, parse, ….

Benenne Funktionen mit ähnlichen Aufgaben mit dem gleichen Präfix

Fetch- und get- bedeutet übersetzt das Gleiche, kann aber verschiedenen Entwickler anders auffassen und verstehen.  Die Sortierung und Bündelung von ähnlichen Funktionen ist mit gleichen Präfixen einfacher.

 Je kürzer eine Funktion, desto besser. Meine Empfehlung 5-70 Zeilen

Funktionen sollten kurz sein, da eine Funktion, nur 1 Tätigkeit verrichten sollte:

  • HTTP-GET behandeln
  • HTTP-Inhalte parsen
  • Error Handling

Eine kurze Funktion hat den Vorteil, dass Du sie komplett Überblicken kannst und den Code in kleine Abschnitte untergliedert, die Du wiederverwenden kannst (DRY).

Kaskadiere Deine Funktionen

Wenn Du viel Code hast, dann musst Du Deine Funktionen kaskadieren lassen.

Stelle einen Baum vor. Die Wurzel des Baums stellt die Main-Funktion dar, die beim Ausführen des Programms der Computer als Erstes liest. Danach rufst Du die drei wesentlichsten Funktionen auf

💣Coding Horror - So nicht!

Nicht allgemein benennen. Sei spezifisch. Vermeide lange Funktionen und packe nicht alles in eine Funktion!

👌 Clean Code - So sollte Dein Code aussehen

Erstelle abstrahierte Ebenen von Funktionskaskaden. 1 Funktion = 1 Aufgabe und mehr nicht.

Klassen in Clean Code

Klassen sind die Nomen unsere Clean Codes.

Deine Klassen sollen Menschen, Dinge und Konzepte beschreiben. Die Attribute einer Klasse sind die Adjektive. Alle Benennung sollten mit Bedacht gewählt sein.

Halte Dich an Standards wie.

z. B., dass jede Klasse die typischen CRUD (create, read, update, delete) Methoden enthalten.

Ich empfehle zusätzlich noch eine toString-Methode, die bei Debuggen schnell Aufschluss über den Inhalt eines Objekts einer Klasse geben soll.

Modelliere echte Konzepte und beachte Standards in Klassen

💣Coding Horror - So nicht!

Klassen beschreiben Konzepte und Gegenstände... und nicht "Information"

👌 Clean Code - So sollte Dein Code aussehen

Stelle die Realität dar. Mit Begriffen, die jedem geläufig sind.

Learnings für dieses Kapitel

  • Guter Code ist eine gute englische Bedienungsanleitung
  • Clean Code spart Zeit und Geld
  • Benenne Deine Variablen, Funktionen und Parameter mit Namen, die den exakten Inhalt und Aufgabe genau beschreibt.
  • Benenne Funktionen mit ähnlichen Aufgaben mit dem gleichen Präfix
  • Kaskadiere Deine Funktionen
  • Modelliere echte Konzepte und beachte Standards in Klassen

Nächste Kapitel

Kapitel 2: Klare Struktur und Format für den Clean Code
Der äußere Rahmen von Code dient dazu dem Überblick über das Projekt zu  behalten und 300 % schneller Projekte fertigzustellen.

Kapitel 3: Clean Code ist besser: Kürzen und Optimieren
Clean Code ist nicht nur eine Hülle. Richtig guter Code ist Speicher und CPU schonend. Außerdem skaliert diese gut.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.