Building an Event Sourced System in .NET with Marten
2 Days
This is exactly the type of problems the event sourcing pattern tries to solve. If we preserve all the events that led up to the current state, we can replay history and derive the current state from that, but we also open the door for more flexibility in our system.
During this workshop we will explore all the concepts that are associated with event sourcing. We will use C# to implement an event sourced system over the course of the workshop, so we can see things in practice. Our framework of choice will be Marten, an open-source, production-ready event sourcing framework in .NET.
Covered Topics
During this workshop, you will learn about:
• The event sourcing pattern
• Relation between event sourcing and DDD
• Commands, Events, Aggregates, etc.
• Read projections and the CQRS pattern
• Testing command handlers and projections
• Performance-optimizations in the system
• Enabling feature development with history applied
Target audience
To attend this workshop, you should be a developer with:
• Working knowledge of the C# programming language
• A basic knowledge of relational databases (Marten uses Postgres)
You will spend some time coding during this workshop. Concepts will be presented for the whole class, which you will then apply in code on your own, or as a group. This workshop will be hands-on. If you prefer watching slide decks for the whole day, this workshop might not be for you.