Ted Leung on the air
Ted Leung on the air: Open Source, Java, Python, and ...
Sun, 08 Jun 2003
Code generation a replacement for AOP?
Craig Andera and Clemens Vasters are writing about some of the problems that they see with AOP. Most of this boils down to the observation that many services are not orthogonal. This in turn leads to problems because one service must be invoked before another service, which means that the order in which aspects are executed matters.

That's where they agree. After that, they diverge. Clemens thinks that we have to learn to deal with these issues because the web services world is a pipeline of services. This is especially true in a GXA based view of the world. The mechanism for weaving aspects is not the hard problem, its making those aspects work together when they aren't supposed to know anything about each other. His solution to this is to apply transaction management techniques and turn each aspect into a very light weight semi-transactional resource manager.

Craig is down on AOP because services are not generally orthogonal, but his argument is weakened by relying on the fact that COM+ services are not orthogonal. He is giving up on AOP (at least an interception or attribute based form) and saying that we just have to write the code by hand since we have to baby sit all the interactions between the aspects/services. That leaves the problem of too much typing, which he proposes to solve using code generation. At this point, you already know what I'm going to say... Macros are a good way to solve the code generation problem without resorting to a separate tool.

There's a lot tangled up in here, a lot of it stems from trying to figure out how to use AOP to solve problems in existing systems. It's nice to see people from the .NET side of the world making contributions to clarify what AOP is all about. At the same time, we shouldn't be limiting the applicability of AOP because COM+ is broken. In the Java world, we have people busily reimplementing service frameworks to allow for use in AOP settings. The JBoss AOP stuff comes first to mind, but they aren't the only ones. We're still in the experimental phases of AOP, clarification, not codification should be the focus.

[12:44] | [computers/programming] | # | TB | F | G | 2 Comments | Other blogs commenting on this post
You can subscribe to an RSS feed of the comments for this blog: RSS Feed for comments

Add a comment here:

You can use some HTML tags in the comment text:
To insert a URI, just type it -- no need to write an anchor tag.
Allowable html tags are: <a href>, <em>, <i>, <b>, <blockquote>, <br/>, <p>, <code>, <pre>, <cite>, <sub> and <sup>.

You can also use some Wiki style:
URI => [uri title]
<em> => _emphasized text_
<b> => *bold text*
Ordered list => consecutive lines starting spaces and an asterisk

Name:


E-mail:


URL:


Comment:


Remember my info?


twl JPG

About

Ted Leung FOAF Explorer

I work at the Open Source Applications Foundation (OSAF).
The opinions expressed here are entirely my own, not those of my employer.

Creative Commons License
This work is licensed under a Creative Commons License.

Now available!
Professional XML Development with Apache Tools : Xerces, Xalan, FOP, Cocoon, Axis, Xindice
Technorati Profile
PGP Key Fingerprint
My del.icio.us Bookmarks
My Flickr Photos


Syndicate
RSS 2.0 xml GIF
Comments (RSS 2.0) xml GIF
Atom 0.3 feed
Feedburner'ed RSS feed

< June 2003 >
SuMoTuWeThFrSa
1 2 3 4 5 6 7
8 91011121314
15161718192021
22232425262728
2930     

Archives
2006
2005
2004
2003

Articles
Macintosh Tips and Tricks

Search
Lucene
Blogs nearby
geourl PNG

Categories
/ (1567)
  books/ (33)
  computers/ (62)
    hardware/ (15)
    internet/ (58)
      mail/ (11)
      microcontent/ (58)
      weblogs/ (174)
        pyblosxom/ (36)
      www/ (25)
    open_source/ (145)
      asf/ (53)
      osaf/ (32)
        chandler/ (35)
        cosmo/ (1)
    operating_systems/ (16)
      linux/ (9)
        debian/ (15)
        ubuntu/ (2)
      macosx/ (101)
        tips/ (25)
      windows_xp/ (4)
    programming/ (156)
      clr/ (1)
      dotnet/ (13)
      java/ (71)
        eclipse/ (22)
      lisp/ (34)
      python/ (86)
      smalltalk/ (4)
      xml/ (18)
    research/ (1)
    security/ (4)
    wireless/ (1)
  culture/ (10)
    film/ (8)
    music/ (6)
  education/ (13)
  family/ (17)
  gadgets/ (24)
  misc/ (47)
  people/ (18)
  photography/ (25)
    pictures/ (12)
  places/ (3)
    us/ (0)
      wa/ (2)
        bainbridge_island/ (17)
        seattle/ (13)
  skating/ (6)
  society/ (20)



[Valid RSS]

del.icio.us linkblog

www.flickr.com

Blogroll

java.blogs
Listed on BlogShares

Locations of visitors to this page
Where are visitors to this page?


pyblosxom GIF