views:

576

answers:

9

When ever domain driven design is discussed, recommendations are almost always made to read Applying Domain Driven Design and Patterns by Jimmy Nilsson and Domain Driven Design by Eric Evans.

Ideally, one would read them both, but for someone who is new to DDD, which of the books above gives the most bang for the buck/hour in a heads up comparison?

+6  A: 

I found the work of Jimmy Nilsson to be mostly not original, he in most parts rehashing material of other authors and lucks clear style of Eric Evans and Martin Fowler. But his book is easier for understanding by beginners.

MichaelT
Totally agree. I love the Evans book and bought my own copy of it. I never felt I got much out of the Nilsson book.I also agree with some of the other posters that Fowler's books would be good follow-ups.
John Price
+1 on PPP by Robert Martin, it's the perfect follow up to DDD which is pretty conceptual
Michael Valenty
+2  A: 

If I had to give advice on a reading list it would be:

First Evans for the basics,

then Agile Software Development principles, patterns and practices by Bob Martin for some practical advice (it's mostly java oriented, there is a C# version of this book too)

Then Patterns of Enterprise Application Architecture by Fowler for the bigger picture, it's a bit older but clearly shows ddd and the alternatives.

These are the essentials. Nilsson is good too but not as good as these books.

Mendelt
A: 
GoodEnough
A: 

You might also want to listen to Scott Hanselman's podcast Rob Conery limps and learns about Domain Driven Design.

John D. Cook
+1  A: 

Evans, there is absolutely no doubt it is the definitive reference. After reading it I'd recommend getting involved in the DDD forum if you have questions.

Colin Jack
+1  A: 

Agree that Evans is excellent. Markus Völter has a detailed and thoughtful discussion with Eric here on Software Engineering Radio.

Andrew Cowenhoven
+2  A: 

After Evan's Domain Driven Design, I would add Analysis Patterns by Martin Fowler to understand Generic SubDomains and not reinvent some of them...

Think Before Coding
+3  A: 

I'm also in the process of learning Domain-Driven Design. I would suggest starting with Domain-Driven Design by Eric Evans.

After reading this book, if you decide that you want to take your DDD understanding to the next level, I would suggest attending Eric Evans' Domain-Driven Design Immersion Course.

Here are some additional podcasts:
Alt.NET – Domain-Drive Design

Deep Fried Bytes – Talking Domain-Driven Design with David Laribee Part 1

Deep Fried Bytes – Talking Domain-Driven Design with David Laribee Part 2

David Laribee also recently wrote an article for the February 2009 edition of the MSDN Magazine called An Introduction To Domain-Driven Design.

Ricardo
+2  A: 

I actually read Nilsson first, though by chance not design.

I would agree that it's far more accessible to the beginner. Evans is the "bible" (as someone else said), and a must-read, but I found Jimmy's approach to be far more hands-on and practical.

Paul