views:

1217

answers:

7

Has anyone read the book ".NET Domain-Driven Design with C#: Problem - Design - Solution" ? How is the book?

A: 

I have not read it myself, but you can read part of the book here:

http://www.amazon.com/gp/reader/0470147563/ref=sib_dp_ptu#reader-link

The 5 reviews on amazon seems to have very different opinions:

http://www.amazon.com/review/product/0470147563/

You can find the source code from the book here if you want to take a look:

http://www.codeplex.com/dddpds

Espo
A: 

I haven't read that book, but if you are interested in Domain Driven design, then the .NET guru is Rocky Lhotka and his CSLA series.

KiwiBastard
I heard that CSLA violates the SRP principle.
cvs
I don't think Rocky would describe himself as any sort of DDD guru.
Stefan Moser
No - the comments are right CSLA isn't about DDD, but any decent Domain would incorporate ideas from it, but anyway my answer is wrong so ignore it - but look at CSLA anyway...
KiwiBastard
I still don't think CSLA has any ideas that would apply to Domain Driven Design at all, it looks like they're fairly incompatible design methodologies. In a nutshell, one states do everything in the business objects (CSLA) and the other states break your model up into objects with specific purposes (DDD). They're at cross-purposes.
Jeffrey Cameron
+2  A: 

I've never read it, but I have read Domain Driven Design and Apply Domain Driven Designs and Patterns and would highly recommend them.

Chris Canal
+1  A: 

I haven't read it (yet) but know people who do and they recommend it. It gives a good introduction to DDD with clear examples.

Peter
+6  A: 

I would not consider Rocky to have anything to do with Domain Driven Design.

If you want to learn DDD go to Evans first then Nilsson. Eric writes about many abstract concepts not covered in Jimmy's work.

Also keep in mind that it is extremely difficult to come up with example applications as you will be looking at the artifacts of a process without seeing the process itself in action (A good analogy would be looking at code generated with TDD but not seeing the test-first/refactor parts).

As a side thought you might even want to start up a reading group in your area to go through Evans. It is a very dense book and I have found for new readers that group discussions with 1-2 people in the group having DDD experience can be extremely valuable in getting more of the information across on the first read.

I would also join the DDD mailing list as well as the altdotnet list over on yahoo groups as there are many practitioners between the two lists who are more than happy to help you read along through the book and/or help field theoretical or implementational questions from you.

Above all, don't fret. DDD is hard. It will take a while for you to 'get' it. Luckily its also iterative and you will see benefits in your code relatively quickly even if you don't 'get' everything.

Cheers,

Greg Young

+5  A: 

Just to be clear CSLA by Rocky Lhotka is not representative of DDD, and in particular not of many of the practices that support DDD (including persistence ignorance). Rocky may be a .NET guru but I'm not sure many people would refer to his books/work when trying to understand DDD.

I think the book in question is OK but I personally wouldn't recommend it If you want to understand DDD I think you need to go directly to the book written by Eric Evans. After that you might find the discussion group useful.

Colin Jack
No fair point, but CSLA is about Model driven design and Evans says, "This is why model-driven design is a natural if not indispensable companion to domain-driven design."
KiwiBastard
+1  A: 

I read it, and was not impressed. While it did give some good code, especially covering databinding with WPF nicely, I did not care for it from the DDD perspective.

Paul