Clean Architecture – Gute Softwarearchitekturen: Das Praxis-Handbuch für professionelles Softwaredesign. Regeln und Paradigmen für effiziente Softwarestrukturierung.

von Robert C. Martin

Eine gute Architektur zeichnet sich laut Uncle Bob dadurch aus, dass Software mit minimalem Aufwand an neue und sich ändernde Anforderungen angepasst werden kann – und damit eine lange und profitable Lebensdauer hat.

Zunächst gibt das Buch eine Einführung in die Grundprinzipien des Software-Designs (SOLID-Prinzipien), Prinzipien des Komponentendesigns (Kohäsion und Kopplung) und Metriken zur Bewertung des Designs (Efferente und Afferente Kopplung, Instabilität, Abstraktheit). Alle Prinzipien und Metriken hat Uncle Bob bereits 2002 in “Agile Software Development: Principles, Patterns, and Practices” beschrieben; größtenteils wurden vollständige Abschnitte einfach übernommen.

Der Schwerpunkt des Buchs liegt auf der Herleitung und Beschreibung der von Uncle Bob so bezeichneten “Clean Architecture”:

Im Kern der Software stehen die fachlichen Komponenten, wie Entitäten und Anwendungsfälle. Diese werden klar abgegrenzt von sogenannten "sekundären Komponenten" – technischen Implementierungsdetails wie Datenbanken, Benutzeroberflächen oder Frameworks. Alle Abhängigkeiten fließen von den technischen Details zum Kern. Erreicht wird dies durch Dependency Inversion an den Komponentengrenzen.

Die Entkopplung erleichtert das Testen von Komponenten. Technologieentscheidungen (z. B. welche Persistenztechnologie oder welches Dependency Injection Framework verwendet werden soll) können aufgeschoben – oder später im Projekt relativ einfach revidiert werden.

Zahlreiche Praxisbeispiele helfen beim Verständnis der Theorie. Und wie alle Bücher von Uncle Bob ist auch dieses mit zahlreichen Anekdoten aus dem Berufsleben des Autors – bis zurück in die 1970er-Jahre – gespickt. Diese Anekdoten sind nicht nur unterhaltsam, sondern helfen auch, den langen evolutionären Weg zur modernen Softwarearchitektur zu verstehen.

Alle Softwarearchitektinnen und -architekten, Programmiererinnen und Programmierer sollten “Clean Architecture” gelesen haben – nicht nur, um moderne Softwarearchitekturen zu implementieren – sondern auch die theoretischen Grundlagen dahinter zu verstehen.

🎧 Geeignet als Hörbuch? Nein, aufgrund zahlreicher Diagramme und Codebeispiele.

Du findest übrigens eine Tutorial-Serie über hexagonale Architektur (die fast identisch ist mit Clean Architecture) im Software-Craftsmanship-Bereich dieser Webseite.

Andere Empfehlungen aus den Genres dieses Buches

* Hinweis: Wir teilen gerne unsere Lieblingsbücher mit dir! Als Amazon-Partner verdienen wir eine kleine Provision bei Einkäufen, die du über unsere Links tätigst. Dies hilft uns, weiterhin Inhalte zu erstellen, die dir gefallen.