As the first technical book of its kind, this unique resource walks you through the process of building a real-world application using Domain-Driven Design implemented in C#. Based on a real application for an existing company, each chapter is broken down into specific modules so that you can identify the problem, decide what solution will provide the best results, and then execute that design to solve the problem. With each chapter, you'll build a complete project from beginning to end.
Book describes creating the application, but more it is focusing on adding new functionalities than to describe technical concept. So after first business module, next are pretty much the same and it doesn't make sense to read them. What is more, author describe code so if you generally understand c# and aren't interested how implementation of constructor of Address class looks like you don't have a lot to read. Basically from middle of the book I just fly it over. Additionally not every code is included :-D. The most interesting (for me) part - synchronization server - client were committed.
I had high expectations on a book that finally would explain the real-world approach on Domain-Driven Design. Domain-Driven Design: Tackling Complexity in the Heart of Software by Eric Evans has great ideas encapsulated in a boring book and Implementing Domain-Driven Design by Vaughn Vernon wasn’t any better. Despite the title the implementing part was hard to find and the book yet another academic approach.
This book is different. Unfortunately, not in a way that makes it a great book. Tim McCarthy builds an application using DDD and you can see code over code. The book is great on showing code, but it fails flat on explaining the why behind the code. Is this the DDD approach? Or is it a way that proved to be working? Or is it simply the first thing that McCarthy tried? The lack of explaining why he is solving the problem the way he does reduces the value of the book for me tremendous. If I need to build the same application I can read a solution. However, should I need to build something else I have no idea on how I should proceed.
The errors don’t help to understand the concept and without the errata you will lose a lot of time with (sometimes) fundamental bugs. If you want to read the book, then get the errata first.