Clean Code ist kein strenges Regelwerk, sondern bezeichnet eine Reihe von Prinzipien, um Code zu produzieren, der intuitiv verständlich und leicht zu ändern ist. Verständlich bedeutet in diesem Fall, dass der Code von jedem geschulten Entwickler auf Anhieb erfassbar ist. Folgende Eigenschaften erleichtern die einfache Lesbarkeit von Clean Code:
- Der Ausführungsablauf der gesamten Anwendung ist sinnvoll und einfach strukturiert.
- Der Zusammenhang verschiedener Teile des Codes ist klar ersichtlich.
- Die Aufgabe bzw. Rolle jeder Klasse, Funktion, Methode und Variable ist auf Anhieb verständlich.
Leicht zu ändern ist Code dann, wenn er einfach anpassbar und erweiterbar ist. Dies macht es wiederum leichter, Fehler im Code zu beheben. Clean Code ist daher sehr wartungsfreundlich. Leicht zu verändernder Code hat folgende Merkmale:
- Klassen und Methoden sind klein und haben möglichst nur eine einzige, eindeutige Aufgabe.
- Klassen und Methoden sind vorhersehbar, funktionieren erwartungsgemäß und sind durch gut dokumentierte APIs (Schnittstellen) öffentlich zugänglich.
- Der Code verfügt über Unit-Tests.
Die Vorteile einer solchen Programmierung liegen auf der Hand: Clean Code ist unabhängig vom ursprünglichen Entwickler. So kann prinzipiell jeder Programmierer mit dem Code arbeiten. Probleme, die beispielsweise bei der Arbeit mit Legacy Code auftreten, werden so vermieden. Auch die Wartung der Software wird so vereinfacht, weil Bugs einfacher gefunden und behoben werden können.