A blast from the past: Improving application design with a rich domain model (#Springone 2007)

A few weeks ago I received an email asking for the slides for one of my talks he had seen on parleys.com. What was especially interesting about this request is that it was for a talk I gave – what feels like a lifetime ago – at SpringOne 2007 !

The talk is Improving application design with a rich domain model and is about what is still one of my favorite topics: object-oriented design. It describes how to improve the design of your application’s business logic by using traditional object-oriented design techniques. It covers a number of topics including:

  • the limitations of procedural code aka. Transaction Scripts
  • the benefits of the Domain Model pattern
  • the building blocks of Domain-Driven design  – entities, value objects, repositories, and services
  • Common code smells and how to refactor them away: long method, feature envy, data class, primitive obsession, switch statements, data clumps

The talk finishes with a demo of how to incrementally refactor a procedural design into an object-oriented design.

These are some basic software development techniques that I suspect many developers have either forgotten or never learned in the mad rush to master the latest fashionable technology.

Fortunately, I was able to find the presentation on my hard-drive and have posted the slides with the embedded video of the demo to slideshare.net. You can also checkout the example code.

This entry was posted in Uncategorized. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s