Thursday, September 25, 2008

Tidbits from Adam Bien

I was attending Adam Biens workshop 'Designing The Boundary - Rich UI Meets Efficient Java EE Backend' at the workshop-days of /ch/open.

I blogged his comment about rich- vs. anemic domain models here. Here some more tidbits:

  • If an application has more than three layers this is suspicious...
  • There is a trend towards rich-client applications! The hype around platforms like FLEX/AIR, Java FX, Eclipse RCP, Google Chrome are a clear indicator of this.
  • There are good reasons to keep your business-logic close to the persistence.
  • There are a lot of arguments for stateful web applications. For typical inhouse enterprise applications with ~1000 users performance problems resulting from keeping the conversation state on the server should not be an issue.
  • The DAO-Pattern is dead ... as are many other classic J2EE patterns. We have to rethink our patterns.
  • Some applications are just not suited for service-orientation. These are typically problem-solving applications. Just think of a SOA-version of eclipse... typical workflow applications on the otehr hand are predestined for service-orientation.
  • Applications with high user interaction are a typical indicator against service-orientation and for local business-logic close to the persistence.
  • Whenever possible deploy into one single VM. Separated VMs for Web- and EJB-Container make hardly ever sense (performance can even be worse, scalability is better achieved with load balancing at the front ...)

    1. Why is the DAO pattern dead? What superceded it ?

    2. I think you should ask Adam Bien himself ... he is writing a book about "Rethinking Patterns".

      I think the main argument is, that JPA is already enough encapsulation for data-access ...

      The EntityManager in JPA is basically a very generic DAO. For many applications this is enough, you can use the EntityManager directly in your business components.

      I am myself not completely convinced by this argumentation.
      If anybody has arguments for using DAOs on top of the EntityManager, I would be interested...


    Related Posts Plugin for WordPress, Blogger...