The Ruby on Rails and ClojureScript experts

Mar 19, 2012

Bob Martin at 43:30:

That’s what architecture is: Find some place to draw a line, and then make sure every dependency that crosses that line goes in the same direction.

He reminds us of an architectural pattern that was presented in the early nineties by Ivar Jacobson:

  • Boundary interfaces: Interfaces that define how a control object interacts with an actor.
  • Entity objects: They are business specific, however not app specific. E.g., an Order, a Document, a Product. They don’t care about persistence. Just the data structures and business rules.
  • Control objects: Also referred to as Interactors, one for each Use Case. They are business and app specific. They integrate Actors, Entities other control objects, and supporting components.

Link: Keynote: Architecture the Lost Years – Robert Martin – Ruby Midwest 2011 via confreaks.com