This book will explain how to apply domain-driven design concepts in a project with Spring Boot 2.0.6 and how to combine them with practices, such as unit testing (test driven development), relational databases and object relational mappers like JPA(Java Persistence API). We will see step by step how to grow an application from the very beginning to a full-fledged solution with DDD principles. Finally there will be two projects, one (static web project using jQuery & HTML) for user interface and another (Spring Boot + REST + JPA project) for API, logic and persistence.
You will see the full process of building a software project using concepts such as entities, value objects, aggregates, repositories, bounded contexts, and domain events. In the way I will explain why we make one decision over another. You will learn what DDD concepts are applicable in which particular case and why it is so. We will see, how to apply the domain-driven design principles in a real world application.
Book Outline and Prerequisites :
Starting with the First Bounded Context
Introducing UI and Persistence Layers
Extending the Bounded Context with Aggregates
Introducing the Second Bounded Context
Working with Domain Events
Looking Forward to Further Enhancements
Book Summary :
Full application from scratch
DDD concepts in practice
Database and ORM