Author: Dan Haywood
Publisher: Pragmatic Bookshelf, 2010
Aimed at: Java developers
Pros: Clear and practical introduction
Cons: Focused on Naked Objects
Reviewed by: Alex Armstrong
This book will only appeal if you are interested in Domain Driven Design and plan to make use of the Naked Objects framework. For many the whole idea of Domain Driven Design is difficult to fathom. The reason is that it is more a collection of practices and terminology laid on top of standard object-oriented design - so a pre-requisite for reading this book is that you not only know Java you are familiar with using it in a fully object-oriented way.
The book is divided into three main parts. The first part deals with tools and Chapter 1 gives a lightening introduction to domain-driven design and Naked Objects. Chapter 2 is a slightly slower slightly deeper look at the whole idea of domain -driven design and next we have relating objects together. Chapter 4 deals with rapid prototyping .
Chapter 5 moves on to consider more complex application types. Chapter 6 deals wit implementing business rules. A basic example of a car servicing business is used to show how the basic ideas can be implemented. Surprisingly the book isn't overflowing with long code examples instead they are broken into short methods and snippets which makes the book easier to read. Chapter 7 covers the basics of value types in building objects. Chapter 8 expands the model to include infrastructure services
Part II is about techniques - a fairly general title that allows the author to cover just about anything. Topics covered include domain patterns, keeping the model maintainable and testing. Part III is similarly general and focuses on practices. Here you find a discussion of some of the realities of life like integrating with web frameworks and enterprise integration.
If you want to find out about Domain-Driven Design and you want to work in Java then you might as well take a Naked Objects approach. This book is a well written and practical introduction to both and as such recommended.