
Softwaredesign und Entwurfsmuster
Das umfassende Handbuch
Kristian Köhler(Author)
Rheinwerk (Publisher)
1st Edition
Published on 9. May 2025
Book
Hardback
517 pages
978-3-367-10259-4 (ISBN)
Description
Modernes Design mit bewährten PatternsEin sauberes, nachhaltiges und erweiterbares Softwaredesign ist die Grundlage professioneller Softwareentwicklung - ob Sie bereits als Softwareentwickler oder -entwicklerin tätig sind, oder sich noch in Ausbildung oder Studium befinden. In diesem umfassenden Handbuch vermittelt Kristian Köhler praxisnah und modern, wie sich die klassischen Patterns auf der Code-Ebene mit Ansätzen auf Architektur- bzw. Strukturebene verbinden lassen. So erfahren Sie alles über gutes Softwaredesign, wie es in der modernen Softwareentwicklung tatsächlich angewendet wird. Ergänzt wird das Buch durch diverse Code-Beispiele, Best Practices und typische Kontexte, die es als Lehr- und Nachschlagewerk unabdingbar machen.Aus dem Inhalt:Clean Code & Clean ArchitectureDomain Driven DesignMicroservice-PatternEntwurfsmusterbeschreibungenPrinzipien für gutes SoftwaredesignDokumentationErzeugungs-, Struktur-, Verhaltens-, Architektur- und DatenmusterAnwendungsorganisationSystemarchitekturmusterCloud-native Patterns
Reviews / Votes
Buchtipp!More details
Language
German
Place of publication
Bonn
Germany
Publishing group
Rheinwerk
Edition type
New edition
Dimensions
Height: 246 mm
Width: 180 mm
Thickness: 33 mm
Weight
1094 gr
ISBN-13
978-3-367-10259-4 (9783367102594)
Schweitzer Classification
Other editions
Additional editions

E-Book
05/2025
1st Edition
Rheinwerk
€31.92
Available for download

Book
04/2025
Rheinwerk
€44.90
Article exhausted; check different version
Person
Author
Kristian Köhler ist freiberuflicher Software-Architekt, Berater, Trainer, Entwickler und Consultant. Seine Kunden berät er rund um alle Fragen der Software-Architektur. Seine mehrtägigen Seminare und Praxisworkshops sind bei Programmierern und Programmiererinnen heiß begehrt. Köhlers Vision ist die nachhaltige Problemlösung mit passenden, effizienten und wohlstrukturierten Software-Lösungen - und diese vermittelt er praxisnah und zeitgemäß.
ISNI: 0000 0000 2309 1110
ISNI: 0000 0000 2309 1110
Content
Materialien zum Buch ... 11
1. Einleitung ... 13
1.1 ... Programmierparadigmen ... 16
1.2 ... Was sind Design-Patterns und wie sind sie entstanden? ... 26
1.3 ... Was sind Softwarearchitektur und Softwaredesign? ... 31
1.4 ... Die Evolution in der Softwareentwicklung und -architektur ... 38
2. Prinzipien für gutes Softwaredesign ... 65
2.1 ... Grundkonzepte der objektorientierten Programmierung ... 66
2.2 ... Clean-Code-Prinzipien ... 78
2.3 ... Die SOLID-Prinzipien ... 114
2.4 ... Information Hiding ... 138
2.5 ... Inversion of Control und Dependency Injection ... 139
2.6 ... Separation of Concerns und Aspektorientierung ... 141
2.7 ... Mit Unit-Tests die Qualität sicherstellen ... 145
3. Sourcecode und Dokumentation der Softwareentwicklung ... 151
3.1 ... Kommentare im Sourcecode ... 152
3.2 ... Dokumentation der Softwarearchitektur ... 166
3.3 ... UML zur Darstellung von Software ... 179
3.4 ... C4 Model zur Darstellung von Softwarearchitektur ... 190
3.5 ... Doc-as-Code ... 199
4. Softwaremuster ... 207
4.1 ... Factory-Method/Fabrikmethode ... 208
4.2 ... Builder/Erbauer ... 217
4.3 ... Strategy/Strategie ... 227
4.4 ... Chain of Responsibility/Zuständigkeitskette ... 235
4.5 ... Command/Kommando ... 244
4.6 ... Observer/Beobachter ... 256
4.7 ... Singleton/Einzelstück ... 266
4.8 ... Adapter/Wrapper ... 274
4.9 ... Iterator ... 284
4.10 ... Composite/Kompositum ... 292
4.11 ... Der Begriff der Anti-Patterns ... 300
5. Softwarearchitektur, -stile und -Patterns ... 307
5.1 ... Die Rolle des Softwarearchitekten ... 308
5.2 ... Softwarearchitekturstile ... 311
5.3 ... Stile zur Anwendungsorganisation und Codestruktur ... 330
5.4 ... Patterns für die Unterstützung der Architekturstile ... 345
6. Kommunikation zwischen Services ... 369
6.1 ... Stile der Anwendungskommunikation ... 371
6.2 ... Resilience Patterns ... 379
6.3 ... Messaging Patterns ... 413
6.4 ... Patterns zur Schnittstellenversionierung ... 438
7. Patterns und Konzepte für verteilte Anwendungen ... 449
7.1 ... Konsistenz ... 450
7.2 ... Das CAP-Theorem ... 451
7.3 ... Das PACELC-Theorem ... 453
7.4 ... Eventual Consistency ... 454
7.5 ... Stateless Architecture Pattern ... 457
7.6 ... Database per Service Pattern ... 463
7.7 ... Optimistic Locking Pattern ... 466
7.8 ... Saga Pattern -- das Verteilte-Transaktionen-Pattern ... 475
7.9 ... Transactional Outbox Pattern ... 480
7.10 ... Event Sourcing Pattern ... 486
7.11 ... Command Query Responsibility Segregation Pattern ... 492
7.12 ... Distributed Tracing Pattern ... 498
Index ... 509