Images in this post missing? We recently lost them in a site migration. We're working to restore these as you read this. Should you need an image in an emergency, please contact us at imagehelp@codebetter.com
DDD: Where is the Code? Another Brief Interlude

Right about now I can hear murmurs, "I haven't seen any code yet"

That is because I view Domain Driven Design firstly as a design methodology, secondly as an architectural style, and lastly as some great software patterns.

I don't believe I am alone in that view, after all it is a significant way into the book before anything resembling UML appears, and even further before anything code-like is introduced.
Now you could pickup the book, extract some of the key terms and half a dozen patterns, and undoubtedly you would be writing better software ... but I suspect you may have missed the "wood for the trees" or put another way "You spent so much time focusing on the details, and missed the bigger picture"

DDD is a better way of thinking about software design, it helps you translate what users and businesses need into software that meets those needs. The patterns may make your software more stable or more maintainable, but it is the methodology that guides you to deliver something fit for purpose.

Of course, eventually you are going to need some code, as a comment on my last post indicated. I am going to postpone that for a while I am afraid, I apologise in advance if anyone is eager to get typing. We have a few more fundamentals of DDD to explore first, then I promise I will start to delve a little into how to best implement these things in C# code.

Previously:

1) Domain Driven Design: A Step by Step Guide
2) DDD: The Ubiquitous Language
3) DDD: Bounded Contexts
4) DDD: There Is No Database
5) DDD: Command Query Separation as an Architectural Concept
6) DDD: Entities and Value Objects

Reference:

InfoQ Free eBook : Domain Driven Design Quickly
Domain-Driven Design: Tackling Complexity in the Heart of Software (Eric Evans)

del.icio.us Tags: DDD,Domain Driven Design,Practices and Principles


Posted 02-14-2009 5:28 PM by Jak Charlton

[Advertisement]

Comments

Tom wrote re: DDD: Where is the Code? Another Brief Interlude
on 02-14-2009 4:24 PM

I have to disagree. For non-practitioners of DDD a (proper) code example would be very, very beneficial.

Take for example the notion of splitting good parts of legacy code into a bounded context. I would love to see a real world  example on that.

Jak Charlton wrote re: DDD: Where is the Code? Another Brief Interlude
on 02-15-2009 8:34 AM

I didn't say there won't be something resembling code, just not yet - we are only just in the basic fundamentals of DDD ... once we get past the, I will do my best to cover the implementation.

Until then please bear with me, I am trying to get all the basics in place to refer back to later on.

Jason wrote re: DDD: Where is the Code? Another Brief Interlude
on 02-15-2009 12:32 PM

It's a great series, Casey.  Keep up the great work.  I too am looking forward to code, or pseudo-code.  I think a well written example application with good explanation of design choices would really help answer the questions that a lot of us have.

Jacob wrote re: DDD: Where is the Code? Another Brief Interlude
on 02-16-2009 3:29 AM

Nice series - I have been following it closely.

I can see your point that code is not the central topic of DDD - but on the other hand the Domain definitely is! IMHO you should focus even more on the problem of transferring a business domain to a model... you have already written about bounded contexts and the ubiquitous language but I feel there's something missing before you jump directly to the more concrete topics of design patterns.

Reflective Perspective - Chris Alcock » The Morning Brew #287 wrote Reflective Perspective - Chris Alcock » The Morning Brew #287
on 02-16-2009 3:37 AM

Pingback from  Reflective Perspective - Chris Alcock  » The Morning Brew #287

Casey Charlton - Insane World wrote DDD: Aggregates and Aggregate Roots
on 02-16-2009 9:51 AM

Download the eBook of the Series so far … We are family I got all my sisters with me Sister Sledge Some

Community Blogs wrote DDD: Aggregates and Aggregate Roots
on 02-16-2009 10:30 AM

Download the eBook of the Series so far … We are family I got all my sisters with me Sister Sledge Some

on 02-16-2009 12:56 PM

DDD/ALT.NET Casey has written a bunch more in his DDD series since my last update 4) DDD: There Is No Database 5) DDD: Command Query Separation as an Architectural Concept 6) DDD: Entities and Value Objects 7) DDD: Where is the Code? 8) DDD: Download

Casey Charlton - Insane World wrote DDD: Services
on 02-17-2009 4:38 PM

There can be no word more common in development, and no word used for such a multitude of different things

Community Blogs wrote DDD: Services
on 02-17-2009 4:44 PM

There can be no word more common in development, and no word used for such a multitude of different things

Casey Charlton - Insane World wrote DDD: What Kind of Applications Is It Suited To?
on 02-18-2009 2:20 PM

In many conversations, and in many comments here, you hear phrases like “well that’s not really suited

Community Blogs wrote DDD: What Kind of Applications Is It Suited To?
on 02-18-2009 2:39 PM

In many conversations, and in many comments here, you hear phrases like “well that’s not really suited

Casey Charlton - Insane World wrote DDD: The Repository Pattern
on 02-20-2009 3:30 AM

I seem to have taken a fairly long time to get here, and it has been mentioned in passing, but now we

Community Blogs wrote DDD: The Repository Pattern
on 02-20-2009 4:12 AM

I seem to have taken a fairly long time to get here, and it has been mentioned in passing, but now we

Casey Charlton - Insane World wrote DDD: Living In The Enterprise
on 02-21-2009 4:25 AM

No, not that Enterprise! The other Enterprise – the big amorphous one that organisation spent a fortune

Community Blogs wrote DDD: Living In The Enterprise
on 02-21-2009 4:48 AM

No, not that Enterprise! The other Enterprise – the big amorphous one that organisation spent a fortune

Insane World wrote DDD: The Repository Pattern
on 02-21-2009 10:42 AM

I seem to have taken a fairly long time to get here, and it has been mentioned in passing, but now we

Insane World wrote DDD: Living In The Enterprise
on 02-21-2009 10:42 AM

No, not that Enterprise! The other Enterprise – the big amorphous one that organisation spent a fortune

DDD Step By Step wrote DDD: Aggregates and Aggregate Roots
on 02-22-2009 3:35 PM

Download the eBook of the Series so far … We are family I got all my sisters with me Sister Sledge Some

DDD Step By Step wrote DDD: Services
on 02-22-2009 3:35 PM

There can be no word more common in development, and no word used for such a multitude of different things

DDD Step By Step wrote DDD: What Kind of Applications Is It Suited To?
on 02-22-2009 3:36 PM

In many conversations, and in many comments here, you hear phrases like “well that’s not really suited

DDD Step By Step wrote DDD: The Repository Pattern
on 02-22-2009 3:36 PM

I seem to have taken a fairly long time to get here, and it has been mentioned in passing, but now we

DDD Step By Step wrote DDD: Living In The Enterprise
on 02-22-2009 3:37 PM

No, not that Enterprise! The other Enterprise – the big amorphous one that organisation spent a fortune

SG wrote re: DDD: Where is the Code? Another Brief Interlude
on 02-24-2009 12:54 PM

For some good code examples try downloading

www.codeplex.com/ncommon

And the guy who create it blogs at,

http://www.codeinsanity.com/

Insane World wrote DDD: Living In The Enterprise
on 02-26-2009 4:08 PM

No, not that Enterprise! The other Enterprise – the big amorphous one that organisation spent a fortune

Insane World wrote DDD: The Repository Pattern
on 02-26-2009 4:08 PM

I seem to have taken a fairly long time to get here, and it has been mentioned in passing, but now we

About The CodeBetter.Com Blog Network
CodeBetter.Com FAQ

Our Mission

Advertisers should contact Brendan

Subscribe
Google Reader or Homepage

del.icio.us CodeBetter.com Latest Items
Add to My Yahoo!
Subscribe with Bloglines
Subscribe in NewsGator Online
Subscribe with myFeedster
Add to My AOL
Furl CodeBetter.com Latest Items
Subscribe in Rojo

Member Projects
DimeCasts.Net - Derik Whittaker

Friends of Devlicio.us
Red-Gate Tools For SQL and .NET

NDepend

SlickEdit
 
SmartInspect .NET Logging
NGEDIT: ViEmu and Codekana
LiteAccounting.Com
DevExpress
Fixx
NHibernate Profiler
Unfuddle
Balsamiq Mockups
Scrumy
JetBrains - ReSharper
Umbraco
NServiceBus
RavenDb
Web Sequence Diagrams
Ducksboard<-- NEW Friend!

 



Site Copyright © 2007 CodeBetter.Com
Content Copyright Individual Bloggers

 

Community Server (Commercial Edition)