Kristian Köhler

Softwaredesign und Entwurfsmuster

Das umfassende Handbuch. 1. Auflage
eBook (epub), 517 Seiten
EAN 9783367102617
Veröffentlicht Mai 2025
Verlag/Hersteller Rheinwerk eBooks

Auch erhältlich als:

Buch (Hardcover)
39,90
39,90 inkl. MwSt.
Teilen
Beschreibung

Modernes Design mit bewährten Patterns Ein 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 Architecture- Domain Driven Design- Microservice-Pattern- Entwurfsmusterbeschreibungen- Prinzipien für gutes Softwaredesign- Dokumentation- Erzeugungs-, Struktur-, Verhaltens-, Architektur- und Datenmuster- Anwendungsorganisation- Systemarchitekturmuster- Cloud-native Patterns

Portrait

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äß.

Inhaltsverzeichnis


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

Technik
Sie können dieses eBook zum Beispiel mit den folgenden Geräten lesen:
• tolino Reader 
Laden Sie das eBook direkt über den Reader-Shop auf dem tolino herunter oder übertragen Sie das eBook auf Ihren tolino mit einer kostenlosen Software wie beispielsweise Adobe Digital Editions. 
• Sony Reader & andere eBook Reader 
Laden Sie das eBook direkt über den Reader-Shop herunter oder übertragen Sie das eBook mit der kostenlosen Software Sony READER FOR PC/Mac oder Adobe Digital Editions auf ein Standard-Lesegeräte. 
• Tablets & Smartphones 
Möchten Sie dieses eBook auf Ihrem Smartphone oder Tablet lesen, finden Sie hier unsere kostenlose Lese-App für iPhone/iPad und Android Smartphone/Tablets. 
• PC & Mac 
Lesen Sie das eBook direkt nach dem Herunterladen mit einer kostenlosen Lesesoftware, beispielsweise Adobe Digital Editions, Sony READER FOR PC/Mac oder direkt über Ihre eBook-Bibliothek in Ihrem Konto unter „Meine eBooks“ -  „online lesen“.
 
Bitte beachten Sie, dass die Kindle-Geräte das Format nicht unterstützen und dieses eBook somit nicht auf Kindle-Geräten lesbar ist.
Hersteller
Libri GmbH
Friedensallee 273

DE - 22763 Hamburg

E-Mail: GPSR@libri.de

Website: www.libri.de