I have enjoyed very much the comparison Mik Kersten is presenting in the first part of AOP@Work series. I have been around AspectJ and AspectWerkz for a while, I've read the documentation of Spring, but never got the oportunity to go deeper into JBossAOP. So I was happy to read a quick intro to all of them.
I would state from the beginning that in my opinion AspectJ and AspectWerkz are the strongest solutions (and surely the AJ5 project will be the best).
However, the reason behind this entry was to point out one difference (very important imo) between the analysed solutions: JBossAOP and Spring are still interceptor based solutions. (their implementation is probably based on proxies; offering join point context through reflection API) and because of this they are presenting some limitations: non-real before, after (with all the different flavors) advices (NB: I think that the correct form is pieces of advice), harder control flow usage.
And yet another thing: this interceptor based AOP will be pushed into the EJB3 spec (but about this I will talk on another entry).
Post a Comment