[aosd-discuss] AOP myths and realities article published

Rick Bradley rick at rickbradley.com
Thu Feb 16 00:05:15 EST 2006

* Ramnivas Laddad (ramnivas at aspectivity.com) [060215 12:39]:
> IBM developerWorks has published my AOP myths and realities article 
> (http://www.ibm.com/developerworks/java/library/j-aopwork15).

Congratulations!  I enjoyed your article -- it was well written and
covers the waterfront well.

I've lurked for a long time on the aosd-discuss list because I find AOP
relatively fascinating, but I'll have to say I've found little occasion
to use AOP per se -- mostly because (at least my perception) I've found
little occasion to use Java in the past few years.

For a while I thought that this was due to the relative availability of
AOP tools for Java as opposed to elsewhere.  These days I'm not so sure.

Programming a lot in dynamic and loosely/weakly typed [0] languages, 
especially most recently Ruby, I first noticed that I relatively had
call for AOP constructs.  After a while, though, I realized I was using
very AOPish constructs but they simply seemed like natural idioms in
dynamic languages.  They didn't require a new formalism or terminology.

I began to wonder if I'd simply picked up enough AOP by osmosis and was
applying the principles.  Possibly, but I've since noticed developers
who exhibit no recognition of "AOP" solving problems similarly in
dynamic languages.

I began to look back at AOP, and especially AOP in Java, and I began to
wonder if the in-depth study of AOP in Java wasn't perhaps due to
problems with Java itself, for which AOP becomes a necessary tool, the
burden of implementation of which in Java makes it ripe for study? [1]

Do you hear much of this sort of talk about AOP?  Is this another myth
for the list of myths?

[0] Whatever one wants to call them, I don't want to split hairs at all
    about what kind of typing whichever language has -- that's a waste
    of time.

[1] Watching the talk about the Singleton design pattern I catch a lot
    of similarities.  When Java developers talk about Singleton they
    find plenty of reasons why Singleton is "bad" or "evil".  Looking at
    Singleton from outside Java, Singleton seems perfectly reasonable
    and useful -- it's simply the common *Java* implementation which has
    gone astray.

 http://www.rickbradley.com    MUPRN: 632
                       |  argue that in the
   random email haiku  |  case of Howard singing, this
                       |  is impossible.

More information about the discuss mailing list