DEV Community

Cover image for Warum Clean Code manchmal zu 'sauber' ist 🧹
Ivo S.
Ivo S.

Posted on

Warum Clean Code manchmal zu 'sauber' ist 🧹

Hey Developer Community! 👋

Wir müssen reden – über Clean Code.

Das Prinzip, das uns jahrelang eingetrichtert wurde: „Schreib lesbaren Code“, „Jede Funktion macht nur eine Sache“, „Kommentare sind böse“.

Doch manchmal macht uns zu viel „Sauberkeit“ blind für das Wesentliche: Verständlichkeit.


🎭 Das Clean Code Paradox

Schon mal versucht, in einem perfekt strukturierten Codebase die eigentliche Logik zu finden – und 15 Minuten gebraucht?

Eine Factory erzeugt einen Service, der intern drei weitere Builder nutzt – für eine E-Mail mit „Willkommen!“ 🧠💥

Klar: sauber.

Aber: für Einsteiger komplett unverständlich.


🚨 Wenn Clean Code zur Falle wird

1. Lesbarkeit übertrieben optimiert

Einfaches Beispiel: Eine Funktion, die das Alter berechnet.

Du kannst sie in eine Mini-Maschine aus Funktionen verpacken – oder einfach:

const calculateAge = (birthDate) => new Date().getFullYear() - new Date(birthDate).getFullYear();
Enter fullscreen mode Exit fullscreen mode

Und plötzlich ist sie für alle verständlich.


2. Der Tod durch tausend Klassen

Ein Button hat Farbe und Größe?

Brauchen wir dafür 5 Klassen, Interfaces und Factories?

Oder reicht eine einfache Funktion, die prüft, ob color und size gültig sind?


3. Das große Kommentar-Verbot

„Guter Code braucht keine Kommentare“ – sagt Clean Code.

Aber was, wenn dein Code mit einem einfachen Satz erklärt, warum etwas passiert?

const processPayment = (amount) => {
  // PayPal nimmt 2.9% + €0.30 pro Transaktion
  return amount * 1.029 + 0.30;
}
Enter fullscreen mode Exit fullscreen mode

Sauberkeit ≠ Stille. Manchmal spricht guter Code.


⚖️ Sauber UND pragmatisch: 3 Prinzipien

1. Optimize for Change, not for Purity

Baue für die Realität – nicht für hypothetische Zukunft.

Eine einfache If-Else-Logik reicht oft.

Du brauchst keine 300 Zeilen Strategie-Muster, wenn du nur 2 Fälle behandeln willst.


2. Kommentare für Business, nicht Technik

Ein Kommentar wie // Schleife initialisieren?

Weg damit.

Aber // 19% MwSt nach deutschem Gesetz (2024)?

Gold wert.


3. Abstrahiere erst, wenn’s wehtut

Wenn du zum dritten Mal denselben Code schreibst: abstrahieren.

Nicht beim ersten Mal.


🌍 Realistische Clean Code Regeln

✅ Regel 1: Baue für den Nächsten im Team

Mach Code explizit, lesbar und nachvollziehbar.

✅ Regel 2: Kommentare für Geschäftslogik

Erkläre Regeln, die man nicht googlen kann.

Verweise auf Business-Dokumente oder interne Policies.

✅ Regel 3: Doppeln > Falsch abstrahieren

Besser: Zwei einfache Funktionen.

Schlechter: Eine „universelle“ Funktion mit Switch-Logik, die alles kann – aber niemand versteht.


💡 Die "Clean Enough"-Philosophie

Dein Code ist gut genug, wenn:

  • Neue Devs verstehen ihn in < 5 Minuten
  • Bugs sind leicht auffindbar
  • Features lassen sich ohne Umbau ergänzen

✅ Pragmatic Clean Code Checklist

  • Ist der Zweck des Codes sofort ersichtlich?
  • Ist die Abstraktion zur Komplexität passend?
  • Könnte ich den Code in 6 Monaten noch verstehen?

🔍 Challenge der Woche: Clean Code Audit

Check dein letztes Projekt:

  • Wie lange dauert es, die Kernlogik zu verstehen?
  • Gibt’s Wrapper-Klassen ohne echten Mehrwert?
  • Könnte ein Junior-Dev damit produktiv werden?

🛠️ Fazit: Clean Code ist ein Werkzeug, kein Dogma

Clean Code ist kein Selbstzweck.

Ziel ist wartbarer, verständlicher, veränderbarer Code – für dich und dein Team.


🧠 Remember:

  • Lesbarkeit > Eleganz
  • Explizit > Implizit
  • Funktionierend > Perfekt
  • Teamverständnis > Individual-Brillanz

Was denkst du?

Warst du auch schon in einem über-engineerten Clean-Code-Alptraum?

Teile deine Erfahrungen & Learnings in den Kommentaren! 😄

Top comments (0)