Domain-driven design (DDD) is one of the most sought-after skills in the industry. This book provides you with step-by-step explanations of essential concepts and practical examples that will see you introducing DDD in your Go projects in no time. Domain-Driven Design with Golang starts by helping you gain a basic understanding of DDD, and then covers all the important patterns, such as bounded context, ubiquitous language, and aggregates. The latter half of the book deals with the real-world implementation of DDD patterns and teaches you how to build two systems while applying DDD principles, which will be a valuable addition to your portfolio. Finally, you’ll find out how to build a microservice, along with learning how DDD-based microservices can be part of a greater distributed system. Although the focus of this book is Golang, by the end of this book you’ll be able to confidently use DDD patterns outside of Go and apply them to other languages and even distributed systems.
Get to grips with domains and the evolution of Domain-driven design
Work with stakeholders to manage complex business needs
Gain a clear understanding of bounded context, services, and value objects
Get up and running with aggregates, factories, repositories, and services
Find out how to apply DDD to monolithic applications and microservices
Discover how to implement DDD patterns on distributed systems
Understand how Test-driven development and Behavior-driven development can work with DDD