< Back to Courses

DDD, CQRS and Event Sourcing in .NET

In this course you will learn how to apply the principles of Domain Driven Design, CQRS and Event Sourcing to build better systems that can meet the demands of your business.

Instead of just talking about these concepts in theory, we will learn by doing. This course contains plenty of hands-on exercises in C# that will show you alternative ways to build software. You will also learn general architecture principles and other best practices for creating better systems.

DDD, CQRS and Event Sourcing are independent techniques that you can use on their own, but together they form a powerful approach to creating modern applications.

Software that:

  • Better captures your domain and business
  • Is easier to test and validate
  • Scales better as traffic grows
  • Can evolve easier over time
  • Is easier to understand

Even if you don’t create a full-blown CQRS/ES/DDD system from scratch, this course will teach you plenty of solid ideas, patterns and principles that you can apply in your existing applications.

In the course we use .NET 5/6 and Visual Studio 2019/2022 and in the exercises you will gradually build up an application from scratch.

Duration

3 days. This course can either be delivered over 3 full days or 6 half days.

Agenda

  • Architecture principles
    • Composition
    • Command pattern
    • Eventual Consistency
    • Immutability
    • Micro front-ends
  • Domain Driven Design
    • Aggregates
    • Bounded Contexts
    • Invariants
    • Ubiquitous language
    • Value Objects
  • Command and Query Responsibility Segregation (CQRS)
    • Separating reads from writes
    • Commands and events
    • Read and write side
    • Querying
  • Modeling
    • Event storming
    • Event modeling
  • Mediator pattern
  • Testing
    • Test-driven development (TDD)
    • Behavior-driven development (BDD)
  • Event Sourcing
    • Using the EventStoreDB
    • Versioning
  • Introduction to integration using Kafka

And much more…

DDD, CQRS and Event Sourcing in .NET

Article SKU
T201

Duration
3 days or 6 half days

Level
Intermediate

Language
English, Swedish

Price
Contact me for a price enquiry or to submit interest.

Training FAQs

Do you provide both on-site and remote training classes?

Yes, we provide both types of training.

Do you provide training in both Swedish and English?

Yes, both options are available. All our course materials are in English and we can teach the class in either Swedish or English.

Do you do half-day training?

When we run on-site, we usually do full-day classes. For remote training, we can provide options for both half and full days.

Do you do webinars and shorter talks?

Yes, please visit our Talks page for more details.

Do you provide customized courses?

Yes we do that. Contact me for more information.