Would you like to learn all about system building and architectures with Domain Driven Design? Join this course on CQRS, Domain Events, Event Sourcing and how to apply DDD, authored by Greg Young.
The largest problem many run into with Domain Driven Design is in getting the abstract concepts implemented in a concrete way. Many of the stereotypical architectures people use actually make it impossible to apply DDD.
This CQRS course will help you avoid this. You will learn all about Command Query Responsibility Separation (CQRS), Domain Events, Event Sourcing and how to effectively apply DDD within an organisation.
Learn how to:
- Apply DDD
- Use CQRS
- Understand Domain Events
- Apply Event Sourcing
What the community says
"One of the best courses I have been on. Lots of real examples and very engaging for an intense course on a big subject. Great to hear how ideas have evolved and how dependent on different scenarios, architectures may be appropriate."Julian Walls on 11th Jun 2015
"Learned a whole lot. The anecdotes and experiences really help in grasping the topics."Attendee on 16th Dec 2014
"Very enjoyable - I'd do it again."Neil Robbins on 10th May 2010
"Superb course - good practical examples backed up with solid theoretical knowledge. - Finn is Development Manager for Fundraising Innovations Ltd"Finn Newick, Fundraising Innovations Ltd on 9th May 2010
"have had the pleasure of spending a 2 day course and many geek beers with Greg Young talking about Domain-Driven Design specifically focussed on the Command and Query Responsibility Segregation (CQRS) pattern. Greg has taken Domain-Driven Design from how Eric Evans describes it in his book and has adapted mostly the technical implementation of it. Command Query Separation (CQS) was originally thought of by Bertrand Meyer and is applied at object level Bertrand defines CQS as: every method should either be a command that performs an action, or a query that returns data to the caller, but not both. In other words, asking a question should not change the answer."Mark Nijhof on 12th Nov 2009
- Domain Driven Design Review
- User intention and why it is important
- Exercise: Building a task based UI
- Command and Query Separation
- Introduction to events as a storage mechanism
- Exercise: Creating an event storage system
- Performance optimizations, snapshots
- Creation of an aggregate root that tracks its own state
- Conext Specifications to capture intent
- How events change testing strategies
- The Read System
- Partitionability of work, developer specialization, and outsourcing
- Eventual Consistency
- Organizational Sagas and the Ubiquitous Integration Language
- Versioning of the event log over long periods of time
- Pub/Sub and building disconnected systems
If you are an Architect or Senior Developer with a strong interest in Domain Driven Design and in particular how to use Command Query Responsibility Separation (CQRS), Domain Events and Event Sourcing, then Greg Young's course is for you!
There are no prerequisites to attend Greg's course.
To get the most out of this course, you are advised to read Eric Evans' book on Tackling Complexity in the Heart of Software
Bring your own hardware
To participate in this CQRS course, you are required to bring your own laptop, so you can develop with your own tools and languages, rather than something you are not familiar with.