14 December 2007

Links on Domain-Driven-Design (and Development)

For an upcoming article I researched a few things on domain-driven design. Find some of the links below:

(last updated Feb. 24th 2008, for Grails)

Note: This entry will be updated in the near future - stay tuned if you're interested in DDD!!

  • Eric Evans' domaindriven website, link to his awesome book on domain-driven design:

  • InfoQ published a minibook on DDD: Domain-Driven Design quickly (authored by Abel Avram and Floyd Marinescu)

  • Jimmy Nilson on Applying Domain-Driven Design and Patterns - a printed book...Of course, he maintains his own blog.

  • The Groovy-/Java based Grails adopted the convention-over-configuration ideas from RoR, but included several of the DDD patterns. It's really easy to describe entities and their associations, both static and dynamic scaffolding care for (some of the) rest. Just recently the Grails-team published their 1.0.1 version (too bad they introduced a number of issues, so the samples from the docu currently don't work properly - but stay tuned.

    IMHO this is one of the most promising approaches to DDD - I'm really curious wether their Apache-Wicket plugin turns out to be enterprise-ready :-) Well done, guys!!

  • NakedObjects Framework, a proven implementation of many DDD-patterns. Hosted here on sourceforge, includes an excellent (!!) programming manual with loads of samples.

  • InfoQ article on the 3.x release of NakedObjects

  • Some very clever people (Larry Constantine and Lucy Lockwood) badly complained the strange user interface of NakedObjects and published their very clear dislike here. What else to be expected from UI-gurus? It's their turf where NO and similar frameworks.

  • JMatter framework. Re-used some ideas from NakedObjects. Contains many sample applications, extensive docu. Have a look at the myTunes sample, where Eitan Suez implements a crude iTunes clone in approx 190 lines of java code. Quite cool. As in NakedObjects, the UI takes some time to get used to... Just recently (Feb-04-2008) updated the framework.

  • Introduction to JMatter on InfoQ - with interesting comments.

  • A discussion of JMatters wizards - with Groovy to the rescue...

  • A few articles on JMatter (from their website, but difficult to find).

  • Roma Framework. Another productive development framework which claims DDD, but does not provide any of the typical DDD patterns.

  • Presentation on the Roma Framework (on Slideshare)

  • Trails framework. More a productivity enhancer than a DDD-framework, but nevertheless...

  • CSLA Business Framework (Homepage), created by Rocky Lhotka.

  • Blog-Entry on CSLA-Business Framework, some critique

  • Of course, Ruby-on-Rails might be used as DDD framework. It's really productive for web applications, but does not implement any of the DDD patterns verbatim (and convention over configuration is not in the DDD list of favorite patterns...

  • Rickard Öberg started with QI4J - well worth checking out, just because it's him...

  • A german company (Freiheit.com) started their own UI-generation-DDD-framework, named SansSouci. Seems to be dead since 2005...