CQRS, Event Sourcing und DDD in .NET
Schulung & Kurs

Praxisintensiver Kurs für erfahrene .NET Entwickler über Domain-Driven Design, CQRS und Event Sourcing – von Aggregaten und Bounded Contexts bis hin zu Event Stores und Projektionen.

Moderne Softwarearchitektur verlangt mehr als technisches Know-how – sie verlangt ein tiefes Verständnis der Geschäftsdomäne. In diesem dreitägigen Kurs erlernen erfahrene .NET Entwickler, wie sie mit Domain-Driven Design, CQRS und Event Sourcing Software bauen, die das Business präzise abbildet, leicht testbar ist und mit wachsenden Anforderungen mithalten kann.

Der Kurs führt Schritt für Schritt durch die zentralen DDD-Bausteine – Entities, Value Objects, Aggregates und Bounded Contexts – und zeigt, wie Command-Query-Separation und Event-Driven Architecture in der Praxis zusammenspielen. Mit Event Sourcing lernen die Teilnehmenden, Zustandsänderungen als unveränderliche Ereignisfolge zu modellieren und Read Models über Projektionen aufzubauen.

Mehr als die Hälfte der Kurszeit ist für Hands-on-Übungen reserviert. Der Kurs ist aktuell mit .NET 10 und vermittelt praxisrelevantes Wissen, das sich direkt auf echte Projekte übertragen lässt.

Kurse für Teams:

Gerne führen wir zugeschnittene Kurse für euer Team durch - vor Ort, remote oder in unseren Kursräumen.

In-House Kurs Anfragen

 

Kursinhalt:


Der Kurs behandelt die folgenden Themen mit einem starken Fokus auf praktische Anwendung und Hands-on-Übungen. Schwerpunkte und Tiefe können je nach Zielgruppe angepasst werden:

– Moderne Anwendungsarchitektur:
... - Modularität und Komposition
... - Immutability und Eventual Consistency
... - Schichtenarchitektur vs. Ports-and-Adapters
– Domain-Driven Design:
... - Ubiquitous Language und Domänenmodellierung
... - Entities und Value Objects
... - Domain Services
... - Aggregates und Consistency Boundaries
... - Invarianten und Domänenregeln
... - Bounded Contexts und Context Mapping
... - Workflow-Modellierung
– CQS und CQRS:
... - Command-Query Separation (CQS)
... - Command-Query Responsibility Segregation (CQRS)
... - Read/Write-Trennung in der Praxis
... - Mediator-Pattern
– Events und Event-Driven Architecture:
... - Commands vs. Domain Events
... - Event Storming und Event Modeling
... - Policies und Reaktionen auf Events
... - Decider-Pattern
– Event Sourcing:
... - Grundprinzipien des Event Sourcing
... - Event Store: Aufbau und Implementierung
... - Streams und Versionierung
... - Snapshots und State-Rebuilding
... - Strategien zur Schema-Evolution
– Read Models und Projektionen:
... - Projektionen aufbauen und verwalten
... - Query-Design für Read Models
... - High-Performance-Patterns
– Testing:
... - TDD im Domänenkontext
... - BDD und Example-driven Testing
... - Event-sourced Aggregates testen

Der Kurs ist aktuell mit .NET 10 und beinhaltet viele praktische Übungen zur sofortigen Anwendung der erlernten Konzepte.


Disclaimer: Der effektive Kursinhalt kann, abhängig vom Trainer, Durchführung, Dauer und Konstellation der Teilnehmer:innen von obigen Angaben abweichen.

Ob wir es Schulung, Kurs, Workshop, Seminar oder Training nennen, wir möchten Teilnehmer/innen an ihrem Punkt abholen und mit dem nötigen praktischen Wissen ausstatten, damit sie die Technologie nach der Schulung direkt anwenden und eigenständig vertiefen können.

Ziel:

Nach Abschluss dieses Kurses sind die Teilnehmenden in der Lage, Software nach DDD-Prinzipien zu modellieren und Domänenlogik sauber von Infrastrukturcode zu trennen. Sie verstehen, wie CQRS die Lesbarkeit und Skalierbarkeit von Anwendungen verbessert, und können Event Sourcing als Persistenzstrategie für event-getriebene Systeme einsetzen. Durch die vielen praktischen Übungen können die erlernten Muster und Techniken direkt auf eigene Projekte angewendet werden.


Dauer:

3 Tage (Wird bei In-House Kursen individuell angepasst.)


Form:

Bewährter Mix aus theoretischen Konzepten, Live-Coding-Demonstrationen und vielen praktischen Übungen. Die Teilnehmenden modellieren reale Domänen und implementieren Event-Sourcing-Szenarien hands-on. Der Trainer begleitet den Prozess mit Expertenwissen und individueller Unterstützung.


Zielgruppe:

Erfahrene .NET Entwickler mit mindestens einem Jahr professioneller Erfahrung, die ihre Architekturkenntnisse vertiefen und lernen möchten, komplexe Businesslogik mit DDD, CQRS und Event Sourcing zu strukturieren. Gute Kenntnisse von C# inklusive Generics, Lambdas und LINQ werden vorausgesetzt.


Voraussetzungen:

Professionelle Erfahrung als .NET Entwickler ist von Vorteil. Ein solides Verständnis von C# inklusive Generics, Lambdas und LINQ ist hilfreich. Vorkenntnisse in DDD, CQRS oder Event Sourcing sind nicht notwendig.


Vorbereitung:

Jeder Teilnehmer erhält nach der Anmeldung einen Fragebogen zur Erfassung des Erfahrungsniveaus und eine Installationsanleitung für die benötigte Entwicklungsumgebung. Passend zu den Antworten senden wir individuelles Feedback zur optimalen Kursvorbereitung.

In-House Kurs anfragen:

In-House Kurs Anfragen

Trage dich in die Warteliste ein für weitere öffentliche Kurs-Termine. Sobald wir genügend Personen auf der Warteliste haben, klären wir einen möglichst für alle passenden Termin ab und schalten einen neuen Termin auf. Falls du direkt mit zwei Kollegen oder Kolleginnen teilnehmen möchtest, können wir sogar direkt einen öffentlichen Kurs für euch planen.

Warteliste

(Falls ihr bereits mehr 3 Teilnehmer:innen oder mehr habt, klären wir mit euch direkt euren Wunschtermin ab und schreiben den Kurs aus.)

Mehr über CQRS, Event Sourcing und DDD in .NET



Domain-Driven Design, CQRS und Event Sourcing haben sich als Schlüsselkonzepte für die Entwicklung komplexer, langlebiger Softwaresysteme etabliert. Zusammen bilden sie ein mächtiges Werkzeugset, um Software zu bauen, die den Anforderungen des Business wirklich entspricht.




Geschichte und Entwicklung


Domain-Driven Design wurde 2003 von Eric Evans in seinem wegweisenden Buch "Domain-Driven Design: Tackling Complexity in the Heart of Software" eingeführt. Aufbauend darauf formulierte Greg Young ab 2010 CQRS und Event Sourcing als konkrete Architekturmuster für verteilte Systeme.


Event Storming wurde von Alberto Brandolini als leichtgewichtige Workshop-Methode entwickelt, um Domänenwissen aus dem ganzen Team herauszuarbeiten. Event Modeling von Adam Dymitruk ergänzt dieses Bild mit einem strukturierteren, blueprint-artigen Ansatz zur Systemmodellierung.


In der .NET-Welt haben Bibliotheken wie MediatR, Marten und EventStoreDB dazu beigetragen, diese Muster zugänglich zu machen. Heute gehören DDD, CQRS und Event Sourcing zum Standardrepertoire moderner Backend-Architektur.