Blog Home  Home Add to any service  
Beckshome.com: Thomas Beck's Blog - Applying Domain-Driven Design and Patterns: With Examples in C# and .NET
Musings about technology and things tangentially related
 
 Tuesday, August 08, 2006

When I purchased this book almost 3 weeks ago, I was surprised to find that it had been on the shelves for 3 months already. Books that unify advanced architectural concepts such as Domain-Driven Design and design patterns are few and far between. This is especially true in the .NET world since many of the source materials originated in the Java realm.

Nilsson does a rather unique job of puling together some of the best domain-driven, object-oriented patterns and approaches and explain them using .NET-specific examples. The pros and cons, as I see them, are taken from my Amazon.com review and reprinted below:

Pros

  • Combines the ideas of Domain Driven Design (Evans) with Patterns of Enterprise Application Architecture (Fowler). These books are pretty much mandatory reading prior to diving into this book.
  • Draws upon a myriad of other well-known sources, including materials from Refactoring to Patterns and the GoF, work from Johnson and Lowy, as well as a rare reference to Naked Objects. The more experienced and better read you are, the more this stuff will make sense.
  • Rare .NET coverage of advanced concepts like Plain Old CLR Objects (POCOs), persistence ignorant (PI) objects, O/R mapping with NHibernate, Dependency Injection, Inversion of Control, and Aspect-Oriented Programming.

Cons

  • While some sections are really insightful and could contain more interesting materials, other sections seem to drone on too long. The work on defining the NUnit tests, in particular, flows like a stream of consciousness and doesn’t really add a lot of structured value to understanding DDD, patters, or TDD for that matter.
  • Embedded comments in the text adopt from the style used in Framework Design Guidelines. It worked very well for Cwalina / Abrams in their book because it seemed planned in from the outset. Comments like “one reviewer commented on the code with the following, more succinct version” seem like editorial comments left in and not collaborative authoring by design.
Tuesday, August 08, 2006 10:08:06 PM (Eastern Standard Time, UTC-05:00)  #    Comments    |   |  Trackback
Thursday, August 10, 2006 8:57:42 PM (Eastern Standard Time, UTC-05:00)
What are your thoughts on this?
http://realworldsa.blogspot.com/2006/04/when-does-xp-work.html

and on this thread?

http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=353498&SiteID=1

as well as this review on DDD:

This book is good for small projects and small teams, or for using the techniques found in it for module level analysis. The author attempts to apply his thoughts to large projects, but they would be extremely hard to apply or pull off. He has some great thoughts on how to absorb domain knowledge, but goes over board bashing the Unified Process and other proven techniques. He isn't coming up with anything new, but he does do an excellent job of creating a book. It is very well organized. BTW, if I thought that XP could be pulled off anywhere in the world, with any group of programmers, this book would get a 10+ rating. I think XP works but only in very specific environments. Most environments do not allow for an enterprise level effort of XP.
Tuesday, August 15, 2006 9:50:45 PM (Eastern Standard Time, UTC-05:00)
Tad – I agree with your assessment of employing XP on projects. There are many factors that speak against XP as the “universal approach”, foremost amongst them being the limited talent pool to select from, requirements for continual user involvement in the process, and organizational resistance to concepts such as pair programming. XP is just one of many on a continuum of software processes that vary by level of ceremony. Being very low ceremony makes XP ideal for some situations but completely inadequate for other. As an ex-soldier this sounds an awful lot like special operations units versus conventional debate that’s been raging for years. For more on this perspective, see my post from August 15th.
Comments are closed.
Copyright © 2008 Thomas Beck. Some rights reserved.

Creative Commons License