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 ...)
  • 2 comments:

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

      ReplyDelete
    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...

      ReplyDelete

    Related Posts Plugin for WordPress, Blogger...