Clean Code – nicht nur richtig, sondern gut entwickeln

|
Normalerweise bin ich kein großer Fan von Büchern über Softwareentwicklung. Die meisten Fachbücher, die ich zu diesem Thema besitze, stehen nur im Regal und sind quasi ungenutzt. Das meiste, was dort drinsteht, ist nämlich entweder bereits nach kurzer Zeit irrelevant geworden oder in Online-Dokumentationen viel besser auffindbar (und mit dem Copy & Paste-Feature auch praktischer).

Das Buch, das ich euch in diesem Artikel näher vorstellen möchte, ist aber anders: In seinem Buch „Clean Code – A Handbook of Agil Software Craftmanship“ (dt. Titel „Clean Code – Refactoring, Patterns, Testen und Techniken für sauberen Code“) erläutert Robert C. Martin, was guten Code ausmacht und wie jeder von uns guten Code schreiben kann. Da es darin also um allgemeingültige Prinzipien der Softwareentwicklung geht, ist dieses Buch gewissermaßen zeitlos. Deshalb ist es auch – obwohl es schon etwas älter ist – immer noch aktuell. Und wird es bestimmt auch noch in einigen Jahren sein.

Über den Autor

Robert C. Martin ist einigen vielleicht als Initiator des Manifests für Agile Softwareentwicklung Anfang der 2000er bekannt. Außerdem ist er einer der führenden Vertreter des Software Craftsmanships: Er sieht Softwareentwicklung als Handwerkskunst, die den gleichen Qualitäts- und Moralstandards unterliegen sollte wie andere Ingenieursberufe. Wer jetzt schon neugierig geworden ist, sollte einfach mal nach „Uncle Bob“ suchen – wie Robert C. Martin in der Szene auch genannt wird. Dabei stoßt ihr sicherlich auf viele spannende, lebhafte und mit Witz erzählte Vorträge, die mich selbst immer wieder über Stunden fesseln können.

Clean Code

In seinem Buch „Clean Code“ erklärt „Uncle Bob“, was die Gefahren von schlechtem Code sind und warum es für Unternehmen ein großes Risiko darstellt, unsauberen Code zu pflegen. Denn auf lange Sicht bleibt die Entwicklung eines Unternehmens nur schnell und agil, wenn der Code sauber bleibt. Deswegen lohnt es sich, Code zu refactoren, auch wenn das vielleicht etwas länger dauert. Später wird es sich aber garrantiert auszahlen.

Clean Code

Was ist sauberer Code?

In den folgenden Kapiteln werden verschiedene Aspekte von sauberem Code betrachtet. Im Laufe des Buchs arbeitet sich „Uncle Bob“ von kleinen Strukturen zu großen Systemen. Los geht’s mit einer Betrachtung, was bedeutungsvolle Namen sind und wie man gute Namen für Variablen, Methoden und Klassen findet. Das nächste Kapitel beschäftigt sich mit Funktionen, ihren Parametern und Rückgabewerten und was dies alles mit dem Erzählen einer Geschichte zu tun hat. Im Folgenden geht es um Objekte, Datenstrukturen und Klassen sowie um die Frage, warum es wichtig ist, dass eine Klasse nur eine einzige Aufgabe erfüllt. Gegen Ende gibt es dann noch einen Überblick über komplexere Systeme – hier wird erklärt, wie die Komponenten und Klassen miteinander interagieren sollten.

Zwischendurch gibt es immer wieder Ausflüge in andere Bereiche wie Kommentare, Formatierung, Unit Tests, Fehlerbehandlung und Nebenläufigkeit. „Uncle Bob“ zeigt die aus seiner Sicht wenigen guten Gründe für Kommentare. Darüber hinaus erläutert er, warum viele häufig gesehene Kommentare nicht nötig – oder sogar hinderlich – sind. Eine Aussage, die eine meiner Professorinnen auch immer unterstützt hat, die ich jetzt aber erst so richtig verstanden habe.

Im letzten Drittel des Buchs gibt es viel Code zu sehen. Hier erklärt „Uncle Bob“ die Methoden des Refactorings und zeigt anhand von praktischen Beispielen, wie er selbst vorgeht. Dabei erläutert er sehr gut, warum er bestimmte Dinge auf die eine oder andere Art umsetzt. Beim Code im Buch handelt es sich um Java, aber auch für Nicht-Java-Entwickler ist dies gut nachvollziehbar; ein Verständnis von Objektorientierung ist zwar hilfreich, aber meiner Meinung nach nicht zwingend notwendig.

Fazit

Bisher bin ich hier nur recht knapp auf die einzelnen Kapitel eingegangen, was daran liegt, dass es in den kommenden Wochen noch ausführlichere Beiträge zu einigen Kapiteln geben wird. Ich freue mich schon darauf, mit euch über die Themen zu diskutieren. Wer jetzt schon mehr wissen will, sollte sich das Buch kaufen.

Trotz seiner Länge und Komplexität – es ist kein Roman, den man einfach so nebenbei liest, sondern ein Arbeitsbuch – habe ich es in wenigen Wochen förmlich aufgesogen. Ich denke, jeder Entwickler, der mehr als ein Hello-World-Programm entwickeln möchte, sollte sich mit Codequalität beschäftigen. Dieses Buch stellt einen guten Einstieg für alle dar – von Auszubildenden bis hin zu Entwicklern mit 20 Jahren Berufserfahrung.

Ähnliche Artikel:

mittwald

Do you speak code? Sieben Programmiersprachen im Überblick

Fabian stellt heute die sieben gängigsten Programmiersprachen vor. Welche passt zu deinen Vorhaben?

Kommentare

Suska am

Super Beitrag! Danke für die kurze Zusammenfassung und Empfehlung. Werde mir das Buch auf jeden Fall mal etwas genauer anschauen :)

Antworten

Kommentar hinzufügen