Unsere Fähigkeit, uns anderen gegenüber so auszudrücken und zu verständigen, dass sie jede Nuance unserer Gefühle und Gedanken verstehen, macht uns Menschen allen anderen Arten überlegen. Das ist unserer Sprache zu verdanken. Selbst Menschen, die nicht sprechen und hören können, haben eine Zeichensprache entwickelt, die es ihnen ermöglicht, zu kommunizieren.
Kannst du dir ein Leben ohne sie vorstellen?
Ich nicht. Ohne Sprache und Kommunikation wäre die Welt nicht dieselbe.
Um nun auf die Webentwicklung zu sprechen zu kommen: Auch sie hat eine eigene Sprache, nämlich das Programmieren. Entwickler:innen schreiben Code, und das ist die einzige Möglichkeit, ihre Ideen, Gedanken und Pläne dem Computer mitzuteilen und die wunderbaren Programme und Anwendungen zu erstellen, die sie entwickeln. Ein Computer kann den Code verstehen, egal ob er übersichtlich ist oder nicht. Wenn aber ein Mensch in der Lage ist, die Logik zu lesen, zu verstehen und zu beurteilen, dann kann man sich als Experte dieser Sprache bezeichnen.
Heutzutage ist das Schreiben von Code keine allzu komplizierte Aufgabe mehr. Jeder kann es tun. Es gibt Bücher und Tutorials, die mit Nachdruck behaupten, dass sie dir in nur zwei Wochen das Programmieren beibringen können und du dann jede beliebige Anwendung erstellen kannst. Ist das nicht großartig?
Wenn ich dir erzählen würde, dass ich geplant habe, am 1. Januar mit dem Mandarinlernen zu beginnen und am 14. bereits fließend sprechen konnte und einen Job als Dolmetscher bekommen habe, würdest du mir das glauben? Ich spüre schon die Skepsis.
Das Gleiche gilt für das Programmieren: Man kann es nicht in wenigen Wochen so effizient lernen, dass man es meistert. Wie jede andere Sprache ist es eine Kunst, und es braucht Zeit, Konzentration und Hingabe, um sie zu beherrschen.
Deshalb habe ich es mir heute zur Aufgabe gemacht, dir alles über das saubere Programmieren zu erzählen. Denn programmieren kann jeder, aber nicht viele können einen sauberen Code schreiben, den andere Entwickler:innen auf einen Blick verstehen können. Das ist der Inbegriff des Programmierens, und das solltest du anstreben.
Was ist sauberer Code?
Ich war in der Einleitung nicht sehr subtil, daher hast du vielleicht schon erraten, was ein sauberer Code ist. Trotzdem möchte ich noch etwas näher darauf eingehen.
Sauberer Code besteht aus zwei Wörtern, die ihn zu einem Ganzen machen. Ihr kennt wahrscheinlich das A und O des Programmierens, also werde ich nicht darauf eingehen. Es ist der Begriff "sauber", der einer Erklärung bedarf, und dafür werde ich eine Analogie verwenden. Wir alle halten unser Zuhause gerne sauber, aber wir alle tun es nicht auf die gleiche Weise. Wir haben verschiedene Techniken und Methoden entwickelt, um die Sauberkeit zu erreichen, die wir uns wünschen. Das Endergebnis ist immer ein makellos sauberes Zuhause, in dem alles in Ordnung ist und man alles, was man sucht, leicht finden kann.
Ein sauberer Code ist etwas Ähnliches, nun ja, sehr ähnlich, wenn du mich fragst. Im Wesentlichen ist ein sauberer Code ein Code, der einfach ist, sodass er leicht verständlich, veränderbar und testbar ist, wobei sein Umfang isoliert ist.
Lass mich die beiden Hauptmerkmale eines sauberen Codes etwas detaillierter erläutern;
Leicht verständlich
Wenn ich sage, dass sauberer Code leicht verständlich ist, meine ich, dass er leicht zu lesen ist und jedes Wort ein klares Bild im Kopf des Lesers erzeugt. Das Verständnis des Codes bedeutet auch, dass sein Ausführungsablauf klar ist, seine Objektzusammenarbeit prägnant ist, seine Klassen präzise Rollen und Verantwortlichkeiten haben und seine Variablen und Ausdrücke einen Zweck haben.
Leicht zu ändern
Wenn ich sage, dass er leicht zu ändern ist, meine ich, dass das Erweitern und Refaktorieren des Codes einfach ist und das Beheben von Fehlern ein Kinderspiel ist. Ich würde mich irren, wenn ich sagen würde, dass dies ein völlig anderer Punkt ist, denn wenn Änderungen an einem Code vorgenommen werden, müssen die Entwickler:innen sicher sein, dass sie die bestehende Funktionalität nicht beeinträchtigen. Dies geschieht nur, wenn er ein absolutes und vollständiges 360°-Verständnis des Codes hat. Folglich wird der Code auch leicht zu testen sein.
Wenn ich einen sauberen Code zusammenfassen müsste, würde ich sagen, er ist alles von organisiert bis ausfallsicher.

Das obige Bild fasst den Unterschied zwischen einem guten/sauberen Code und einem schlechten/schmutzigen Code sehr prägnant und humorvoll zusammen. Es wird WTF-Momente geben, aber ihre Anzahl unterscheidet die beiden.
Das Schmutzige kennen
Ein schmutziger Code ist genau das: Er ist unsauber, unorganisiert, chaotisch und alles andere, was ein sauberer Code nicht ist. Wenn es keine Logik, kein System und nur ein minimales Verständnis des Codes gibt, dann hast du, mein Freund, einen ziemlich schmutzigen Code produziert.
Stell dir vor, du musst dein Lieblingshemd in einem Schrank finden, der seit über einem Jahr nicht mehr aufgeräumt wurde. Ich bin mir nicht sicher, ob du es finden wirst. Selbst wenn du es finden würdest, würde es lange dauern, und du würdest am Ende ein viel größeres Chaos haben als zuvor.
Ein schmutziger Code, der wirklich schwer zu verstehen ist, wird dich also verlangsamen und viel mehr Anstrengung von deiner Seite erfordern, um selbst die einfachsten Aufgaben zu erledigen. Das Beheben von Fehlern wird dir mit Sicherheit Kopfschmerzen bereiten. Es würde deine Effizienz beeinträchtigen, die Erfolgsquote deiner Projekte würde sinken und deine Entwickler:innen und du würdet das, was dabei herauskommt, verabscheuen.
Mit einem so schönen Bild vor Augen bist du sicher schon ganz gespannt darauf zu erfahren, wie du deinen Code aufräumen oder von Grund auf neu einen sauberen Code erstellen kannst. Keine Sorge, ich habe die Antwort für dich.
Was sind die Prinzipien eines sauberen Codes?
Sauber zu programmieren ist gar nicht so kompliziert, es ist nichts, was unmöglich zu erreichen ist. Du musst nur ein paar Prinzipien genauestens befolgen, ohne Abweichungen oder Abstriche, und du wirst nie einen schmutzigen Code haben. Da du das mit ziemlicher Sicherheit willst, lies und setze um, mein Freund.

Folge dem einfachen Weg: KISS
Das Akronym KISS steht für Keep It Simple, Stupid (halte es einfach, Dummkopf). Überraschenderweise stammt dieser Begriff aus der US-Marine aus den 60er Jahren. Wie der Name schon sagt, besteht dieses Prinzip darauf, die Dinge einfach zu halten. Du solltest die Dinge nicht unnötig verkomplizieren, indem du ein komplexes Code-Fragment hinzufügst, wenn ein einfacher einzeiliger Code die Aufgabe effektiv erledigen könnte.
Halte die Dinge einfach. Halte sie verständlich. Halte sie prägnant, sodass du auch nach 10 Monaten noch verstehen kannst, was du jetzt getan hast. Zu clever zu sein ist nicht immer eine tolle Sache.
Eliminiere die Wiederholungen: DRY
DRY steht für Don't Repeat Yourself (wiederhole dich nicht), denn wenn du das tust, wirst du am Ende einen schmutzigen Code haben. Dieses Prinzip besagt eindeutig, dass die Duplizierung von Daten und Logik vermieden werden soll. Und es bietet eine Alternative dafür, nämlich das Finden von Logik in Wiederholungen.
Du könntest Zeilen duplizieren oder einen Algorithmus finden, der mit Iteration funktioniert. Ich bin sicher, du würdest dich für Letzteres entscheiden. Verwende Schleifen, um einen Code zu steuern, der mehrere Durchläufe erfordert. Das Debuggen einer Schleife mit 20 Wiederholungen ist besser als das Debuggen von 20 Codeblöcken mit einer Wiederholung.
Vermeide das Unnötige: YAGNI
You Aren't Going to Need It (du wirst es nicht brauchen) ist die vollständige Version von YAGNI. Es ist sehr einfach zu verstehen, da es die Gegenwart anstelle der Zukunft betont. YAGNI besagt, dass du keinen Code für etwas hinzufügen musst, das heute nicht benötigt wird.
Das Programmieren für zusätzliche Funktionen, die von dem Projekt nie genutzt werden würden, ist einfach eine Verschwendung von Zeit, also warum sollte man es tun? Warum ein Problem lösen, das noch gar nicht zu einem Problem geworden ist? Wenn du diese unnötigen Programmiergewohnheiten vermeidest, wirst du einen sauberen Code haben.
Individualisiere das Verhalten: COI
COI steht für Composition over Inheritance (Komposition statt Vererbung). Dieses Prinzip sagt dir, dass du Objekte danach entwerfen sollst, was sie sind und nicht danach, was sie sind. Um dies zu verstehen, nehmen wir das Beispiel von Objekten mit Verhalten: Sie sollten nur Instanzen von Objekten mit individuellem Verhalten enthalten. Diese Objekte sollten keine Klasse erben und ihnen sollten auch keine neuen Verhaltensweisen gegeben werden.
Du fragst dich vielleicht warum, die Antwort ist einfach. Du würdest mit zwei Problemen konfrontiert werden: Zum einen würde die Hierarchie zu einem Durcheinander werden und zum anderen würdest du die Flexibilität verlieren, die spezielle Verhaltensweisen definiert.
Lege eine einzige Verantwortlichkeit für jede Klasse und jedes Modul fest
Dieses Prinzip besagt, dass jede Klasse und jedes Modul nur für eine Funktionalität verantwortlich sein sollte. Eine Klasse mit zu vielen Funktionen zu überfrachten, würde die Dinge nur verkomplizieren und die Gesamtfunktionalität beeinträchtigen, da du in Zukunft keine zusätzlichen Funktionen mehr hinzufügen könntest.
Wenn du bereits etwas in dieser Art getan hast, indem du Klassen und Module überladen hast, musst du sie nur noch refaktorieren und in kleinere Teile zerlegen.
Trenne die Zuständigkeiten
Die Trennung der Zuständigkeiten besagt, dass du beim Entwurf eines Programms verschiedene Container haben solltest, die nicht füreinander zugänglich werden dürfen.
Das Model-View-Controller-Design ist das Paradebeispiel für dieses Prinzip, da es das Programm in drei Schichten aus Daten, Logik und Seitenanzeigen unterteilt. Das Ergebnis dieser Trennung ist, dass der Code extrem einfach zu debuggen ist und du den Code umschreiben kannst, ohne befürchten zu müssen, dass die Daten und die Logik beeinträchtigt werden.
Betone die Dokumentation
Eine ordnungsgemäße Dokumentation kann ein Lebensretter sein, besonders beim Programmieren. Mit Dokumentation meine ich, dass du Kommentare hinzufügen musst, um Objekte zu erklären, Variablendefinitionen zu verbessern und die Funktionen relativ leicht verständlich zu machen.
Stell dir vor, dein zukünftiges Ich kommt zum jetzigen Code zurück, um einen Fehler zu beheben. Wärst du nicht dankbar für die zusätzliche Mühe, die du jetzt investiert hast, weil du dann nicht jede Zeile durchgehen müsstest, um die Funktionalität zu verstehen? Ja, die Dokumentation hilft bei der Erstellung eines saubereren Codes.
Konzentriere dich auf die Konsistenz
Dieses Prinzip sagt dir nicht wirklich, wie du programmieren sollst, sondern es sagt dir, dass du dich an die Art und Weise halten sollst, wie du es bereits tust. Konsistenz bedeutet, dass du die gleichen Techniken und Methoden im gesamten Code anwendest. Dies erleichtert die Identifizierung potenzieller Probleme.
Es kann jedoch vorkommen, dass du von dem konsistenten Pfad, den du eingeschlagen hast, abweichen musst, und in diesem Fall kannst du einfach einen Kommentar hinzufügen, wie wir im vorherigen Punkt besprochen haben, damit du und andere Entwickler:innen wissen, was passiert ist und warum.
Wenn du all dies befolgst, erhältst du einen Code, der vollständig, prägnant, klar und organisiert ist. Und das ist die Definition eines sauberen Codes.
Kommen wir zum Crescendo: Warum ist sauberer Code wichtig?

Nachdem du nun weißt, wie du einen sauberen Code von einem schmutzigen unterscheiden kannst und auch ein Bewusstsein dafür hast, wie du dieses Maß an Sauberkeit erreichen kannst, fragst du dich vielleicht, warum du so weit gehen solltest, wenn deine alte Methode doch gut funktioniert hat.
Als Antwort möchte ich nur zwei Dinge sagen;
- Erstens sollte "gut" kein Ziel sein, das einer von uns anstreben sollte, und schon gar nicht etwas, womit wir uns zufrieden geben sollten.
- Und zweitens: Wenn etwas in der Gegenwart funktioniert, ist das dann eine Garantie dafür, dass es auch in der Zukunft funktionieren wird?
Denk nicht, dass ich mit meinen Erklärungen fertig bin, keineswegs. Ich habe eine lange Liste von Vorteilen, die sich aus sauberem Code ergeben, und diese werden die Frage "Warum ist sauberer Code wichtig?" explizit beantworten. Also, lasst uns beginnen.
Sauberer Code ermöglicht es dir, mit Leichtigkeit zu lesen, zu modifizieren und zu refaktorieren
Wie ich bereits im vorherigen Abschnitt erwähnt habe, bedeutet das Schreiben von sauberem Code, einen Code zu schreiben, der einfach, klar und leicht verständlich ist. Er sollte nicht übermäßig kompliziert sein, ohne unnötige Details und Wiederholungen. Dies ist wichtig, da dein Code von dir und anderen Entwickler:innen mehrmals überarbeitet werden muss und er klar und prägnant sein sollte.
Vielleicht fühlst du dich jetzt mit deinem Code wohl, aber stell dir vor, ein Monat später muss ein Junior-Entwickler ihn refaktorieren, wäre er in der Lage, ihn zu verstehen? Wenn nicht, dann hättest du ein Problem. Sogar das Beheben von Fehlern würde zu einem Problem werden. Eine Änderung in einem Abschnitt vorzunehmen, würde kompliziert werden, weil du dir nicht sicher wärst, wie sie sich auf einen anderen Abschnitt auswirken würde, einfach weil du nicht gut genug lesen kannst, um es zu verstehen.
Sauberer Code ermöglicht es dir, ihn mit Leichtigkeit zu warten
Code ist nichts, was mit der nächsten Produktwelle überflüssig wird, er wird für Jahrzehnte da sein, wenn du es willst. Bei einer so langen Zeitspanne ist es offensichtlich, dass es Probleme damit geben wird. Es ist so ähnlich wie bei einer Maschine, die schon lange in Betrieb ist. Einige Teile müssen geölt, einige repariert und einige im Laufe der Zeit ganz ausgetauscht werden. Dein Code ist genau wie diese Maschine.
Wenn du nun einen unordentlichen Code hast und ein Fehler behoben werden muss, dauert es ewig, bis deine Entwickler:innen herausgefunden haben, wo das Problem liegt, und dann noch zusätzliche Zeit, um es schließlich zu beheben. Das ist auch der Grund, warum viele Entwickler:innen davor zurückschrecken, einen bestehenden Code zu lesen und zu verstehen, und dazu neigen, einen neuen zu schreiben, und das sollte nicht der Fall sein. Mit einem sauberen Code wäre das ganz sicher nicht der Fall.
Du würdest so viel Zeit sparen. Anstatt daran zu arbeiten, einen bestehenden schmutzigen Code zu festigen, könntest du tatsächlich Zeit für Tests und Entwicklung aufwenden, um die Gesamtfunktionalität und Attraktivität deiner Website zu verbessern. Sauberer Code ist also wichtig, weil er dir und deinen Entwickler:innen ermöglicht, einen Code zu verstehen, der von einer Reihe verschiedener Entwickler:innen geschrieben und refaktorisiert wurde, und das spart dir wertvolle Zeit und Mühe, was dir Geld einbringt.
Sauberer Code ermöglicht es dir, mit Leichtigkeit zu testen
Wenn wir kochen, machen wir immer wieder den Geschmackstest, um zu wissen, ob die Aromen in die richtige Richtung gehen oder nicht. Wenn wir das jeden Tag zum Frühstück, Mittag- und Abendessen tun, sollte es dann nicht auch für die Softwareentwicklung getan werden.
Das sollte es auf jeden Fall. Die Webentwicklung wird sowohl manuellen als auch automatisierten Tests unterzogen, und diese Tests sind stark von deinem Code abhängig. Je sauberer der Code ist, desto besser kann das Ergebnis bewertet werden. Wie könntest du bei einem unordentlichen Code die Ursache des Fehlers finden?
Da das Testen den Weg für eine verbesserte Codequalität, ein verbessertes Tempo des Teams und eine geringere Anzahl von Fehlern ebnet, solltest du es besser ernst nehmen, und ein saubererer Code ist der Anfang.
Sauberer Code ermöglicht es dir, deinen eigenen Rhythmus zu finden
Wenn du ein Stück Code schreibst, wirst du dich anstrengen. Wenn ein Jahr später ein anderer Entwickler deine Schrift nicht versteht, wird er sie löschen und selbst einen neuen Code schreiben. Ist das nicht eine verschwendete Mühe?
Ein saubererer Code würde das nie zulassen. Sauberkeit erfordert ein System, das befolgt werden muss, und es kann sein, was immer du willst. Wenn du einen sauberen Code schreibst, wirst du automatisch einen Rhythmus, ein System, eine Technik finden, die für dich funktioniert, und sie wird in deiner gesamten Arbeit widerhallen. Was würde das nun bewirken?
Zum einen würde es deinen Stempel tragen und es zu deinem Meisterwerk machen, das für immer bewahrt werden soll, ähnlich wie ein Monet (entschuldige meine Übertreibung).
Und der nächste Entwickler bei der Arbeit wäre in der Lage, den Rhythmus zu erkennen und zu verstehen, er könnte ihn sogar übernehmen.
Dein Rhythmus würde zu Konsistenz führen, was zu einer besseren Verwaltung des Codes beitragen würde und dir und dem Unternehmen in Zukunft viel Zeit sparen würde.
Sauberer Code ermöglicht es dir, mit Leichtigkeit zu skalieren
Nichts bleibt im Leben stehen. Wir als Menschen beginnen vom Tag unserer Geburt an zu wachsen. Das Gleiche gilt für Webanwendungen, was mich zu dem Punkt der Skalierbarkeit führt.
Jedes Produkt oder jede Dienstleistung, die du anbietest, muss eines Tages auf die nächste Stufe gehoben werden. Damit das geschehen kann, musst du auf die Codebasis zurückkommen. Wenn diese gut dokumentiert und sauber ist, wird die Skalierung des Projekts zum Kinderspiel. Wenn nicht, muss ich mich wohl nicht wiederholen. Die neuen Entwickler:innen und Ingenieur:innen werden definitiv viel zu tun haben.
Der Code ist das Fundament jeder Website oder Anwendung. Wenn dieses nicht stark genug ist, kannst du dann überhaupt daran denken, etwas anderes darauf aufzubauen?
Sauberer Code sorgt dafür, dass deine Entwickler:innen zufrieden sind
Nun, das ist etwas, das unsere Entwickler:innen gespürt haben. Du könntest es als persönlichen Vorteil bezeichnen, wenn du so willst.
Hast du dich schon einmal dem Frühjahrsputz hingegeben? Wenn du dich von all dem Chaos und den unnötigen Dingen verabschiedest, die du das ganze Jahr über angesammelt hast, fühlst du dich dann nicht großartig, wie auf dem Gipfel der Welt? Fühlt sich dein Zuhause dann nicht so an, als wäre es bis ins Innerste gereinigt worden? Für mich fühlt es sich so an. Ich bin dann am zufriedensten, sogar noch mehr als Monica, als sie Joeys und Chandlers Wohnung bis zum letzten Zentimeter sauber geschrubbt hat.
Für Entwickler:innen ist der Code wie ihr Zuhause, je sauberer er ist, desto besser werden sie sich fühlen. Die Zufriedenheit, die sie empfinden, wird sich schließlich in ihrer Arbeit niederschlagen, was deinen Kund:innen und dir zugute kommt. Ein Gewinn für alle.
Sobald du sichergestellt hast, dass sauberer Code geschrieben wird, ist es ebenso wichtig, die Bedeutung von Code-Reviews zu verstehen, gesunde Code-Review-Ansätze zu integrieren und eine ordnungsgemäße Zusammenarbeit zwischen Designer:innen und Entwickler:innen während der Code-Review zu ermöglichen.
Fazit
Ich glaube, ich habe alles gesagt. Unordentlich zu sein, funktioniert für niemanden. Du hast dich vielleicht mit dem Chaos angefreundet, du hast vielleicht sogar ein System gefunden, das für das Chaos funktioniert. Aber würde es auch für den nächsten Entwickler funktionieren, der in deine Fußstapfen tritt? Kannst du absolut sicher sein, dass du immer jedes Wort verstehen wirst, das du in den Code geschrieben hast?
Sprache ist eine Kunst, und so ist es auch, etwas Wunderbares daraus zu schaffen. Als Autor:in, auch wenn du Code schreibst, bist du ein Künstler und du möchtest stolz auf deine Arbeit sein. Und du kannst nicht stolz auf ein Chaos sein, also beginne, den Code in eine sauberere Version zu ändern, wenn du es noch nicht getan hast. Wer weiß, vielleicht wartet am Ende eine Belohnung auf dich.
Abonnieren
Verwandte Blogs
KI-Fairness: Ein tiefer Einblick in Microsofts Fairlearn Toolkit

Künstliche Intelligenz (KI) hat branchenübergreifend, insbesondere im Finanzdienstleistungssektor, das Spiel verändert. Von…
API-Dokumentationstool: Die 10 besten Tools für 2025

Eine Google-Suche nach „Bestes API-Dokumentationstool“ liefert zahlreiche Ergebnisse. Die wachsende Anzahl von API…
6 verbreitete Irrtümer über Softwaretests – widerlegt

Eine einwandfreie Produktauslieferung erfordert eine perfekte Kombination aus Entwicklungs- und Testaufwand. Das Testen…