Book Image

Domain-Driven Design with Golang

By : Matthew Boyle
5 (1)
Book Image

Domain-Driven Design with Golang

5 (1)
By: Matthew Boyle

Overview of this book

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.
Table of Contents (13 chapters)
Part 1: Introduction to Domain-Driven Design
Part 2: Real -World Domain-Driven Design with Golang


As this ebook edition doesn't have fixed pagination, the page numbers below are hyperlinked for reference only, based on the printed edition of this book.


adapter layer 36

adapter pattern 121

Advanced Messaging Queuing Protocol (AMQP) protocol 139

aggregate pattern 53

order 53

team 54

wallet 54

aggregates 53, 54

beyond single bounded context 57

designing 56

discovering 55

Alpha 3 ISO-3166 format 116

Amazon Web Services (AWS) 134

anemic models 45-49

anti-corruption layer 36-38, 121-124

Apache Software Foundation (ASF) 145

application services 69-74


behaviour-driven development (BDD) 174-176

Big Blue Book 6

binary serialization 30

black-box testing 154

bounded context 20-22

anti-corruption layer 36-38

Open Host Service 22-24

published language 24, 25


gRPC for Go with 32-35

reference link 32


CAP theorem 135-137

Cassandra 136, 137