Zum Hauptinhalt springen Zur Suche springen Zur Hauptnavigation springen
Beschreibung

Get to know the tools of the software trade! Understand the fundamentals of good software design and development, from object-oriented principles to clean code guidelines. Once you have a solid foundation, get your hands dirty with sample programs that use software architecture and design patterns like MVC, factory, chain of responsibility, adapter, and many more. Every program will walk you step by step through a problem, its context, its solution, and relevant limitations. With information on creating good documentation and implementing best practices, this comprehensive guide will improve your applications!

Highlights include:

1) Object-oriented programming

2) Clean code

3) Design patterns

4) Software design principles

5) Application organization

6)Creation patterns

7) Structural patterns

8) Behavioral patterns

9) Data patterns

10) System architecture patterns

11)Cloud-native patterns

12)Documentation

Get to know the tools of the software trade! Understand the fundamentals of good software design and development, from object-oriented principles to clean code guidelines. Once you have a solid foundation, get your hands dirty with sample programs that use software architecture and design patterns like MVC, factory, chain of responsibility, adapter, and many more. Every program will walk you step by step through a problem, its context, its solution, and relevant limitations. With information on creating good documentation and implementing best practices, this comprehensive guide will improve your applications!

Highlights include:

1) Object-oriented programming

2) Clean code

3) Design patterns

4) Software design principles

5) Application organization

6)Creation patterns

7) Structural patterns

8) Behavioral patterns

9) Data patterns

10) System architecture patterns

11)Cloud-native patterns

12)Documentation

Über den Autor
Kristian Köhler is a software architect and developer with a passion for solving problems using efficient, well-structured software. He is the managing director of Source Fellows GmbH.
Inhaltsverzeichnis

1 ... Introduction ... 15

1.1 ... Programming Paradigms ... 17

1.2 ... What Are Design Patterns and How Did They Come About? ... 27

1.3 ... What Are Software Architecture and Software Design? ... 31

1.4 ... The Evolution of Software Development and Architecture ... 38

2 ... Principles of Good Software Design ... 63

2.1 ... Basic Concepts of Object-Oriented Programming ... 64

2.2 ... Clean Code Principles ... 75

2.3 ... SOLID Principles ... 108

2.4 ... Information Hiding ... 131

2.5 ... Inversion of Control and Dependency Injection ... 132

2.6 ... Separation of Concerns and Aspect Orientation ... 134

2.7 ... Quality Assurance with Unit Tests ... 137

3 ... Source Code and Documenting the Software Development ... 143

3.1 ... Comments in the Source Code ... 143

3.2 ... Documenting the Software Architecture ... 157

3.3 ... Representing Software in Unified Modeling Language ... 169

3.4 ... C4 Model for Representing Software Architecture ... 180

3.5 ... Doc-as-Code ... 188

4 ... Software Patterns ... 197

4.1 ... Factory Method ... 198

4.2 ... Builder ... 206

4.3 ... Strategy ... 216

4.4 ... Chain of Responsibility ... 223

4.5 ... Command ... 232

4.6 ... Observer ... 243

4.7 ... Singleton ... 251

4.8 ... Adapter/Wrapper ... 259

4.9 ... Iterator ... 268

4.10 ... Composite ... 276

4.11 ... The Concept of Anti-Patterns ... 283

5 ... Software Architecture, Styles, and Patterns ... 289

5.1 ... The Role of the Software Architect ... 290

5.2 ... Software Architecture Styles ... 292

5.3 ... Styles for Application Organization and Code Structure ... 310

5.4 ... Patterns for the Support of Architectural Styles ... 324

6 ... Communication Between Services ... 347

6.1 ... Styles of Application Communication ... 349

6.2 ... Resilience Patterns ... 356

6.3 ... Messaging Patterns ... 388

6.4 ... Patterns for Interface Versioning ... 411

7 ... Patterns and Concepts for Distributed Applications ... 421

7.1 ... Consistency ... 422

7.2 ... The CAP Theorem ... 423

7.3 ... The PACELC Theorem ... 424

7.4 ... Eventual Consistency ... 425

7.5 ... Stateless Architecture Pattern ... 428

7.6 ... Database per Service Pattern ... 434

7.7 ... Optimistic Locking Pattern ... 437

7.8 ... Saga Pattern: The Distributed Transactions Pattern ... 446

7.9 ... Transactional Outbox Pattern ... 450

7.10 ... Event Sourcing Pattern ... 455

7.11 ... Command Query Responsibility Segregation Pattern ... 461

7.12 ... Distributed Tracing Pattern ... 467

... The Author ... 479

... Index ... 481

Details
Erscheinungsjahr: 2025
Fachbereich: Programmiersprachen
Genre: Importe, Informatik
Rubrik: Naturwissenschaften & Technik
Medium: Taschenbuch
Inhalt: 488 S.
ISBN-13: 9781493227433
ISBN-10: 1493227432
Sprache: Englisch
Einband: Kartoniert / Broschiert
Autor: Köhler, Kristian
Hersteller: Rheinwerk Verlag GmbH
Rheinwerk Publishing Inc.
Verantwortliche Person für die EU: Rheinwerk Verlag GmbH, Rheinwerkallee 4, D-53227 Bonn, service@rheinwerk-verlag.de
Maße: 255 x 178 x 23 mm
Von/Mit: Kristian Köhler
Erscheinungsdatum: 10.12.2025
Gewicht: 0,878 kg
Artikel-ID: 134267895

Ähnliche Produkte