geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dhananjay Nene" <dn...@dnene.com>
Subject RE: Aspect based design ?
Date Fri, 08 Aug 2003 12:53:05 GMT

> On Friday, August 8, 2003, at 09:51  am, Stefan Arentz wrote:
>
> >
> > On Thursday, August 7, 2003, at 19:30, James Strachan wrote:
> >
> > Personally I don't care much (yet) about a service for users of the
> > servers but I think it should be given some serious thoughts for
> > container development.
>
> Agreed. Though lets get the J2EE server ready first then lets figure
> out how to weave J2EE aspects nicely into POJOs later on - or in a
> separate parallel project.
>
> Incidentally if there was gonna be some J2EE aspects, they should
> hopefully be mostly J2EE standard apsects and so work with any J2EE
> container right? So maybe its time for a separate AspectJ2ee project?
> I'm sure Geronimo could eventually supply some custom Geronimo-specific
> aspects later on down the road.
>
Assuming one started development without any existing code, AOP would
deliver two advantages.
a. For Developers - Offer a better mechanism of expressing cross cutting
design constructs and thus the code
b. For Developers and End users - Offer a better mechanism of expressing
geronimo features which can be perceived to be cross cutting for the users.
The most obvious ones here are transaction / security / logging /
persistence
etc.

An aspect based design would support a scenario where geronimo ships with
j2ee aspects, and would allow "unsatisfied" users to tweak the aspects or
write their own. I believe it would be important to have a considered
strategy on whether such a feature would be required and if so how and when
should it be brought in. The implementation could be phased, but if the
approach isnt in place, then it may never take off. Hence I dont think one
can "defer" this issue.

You do bring out an interesting option of a separate AspectJ2EE project, but
I think it would be useful to consider how such a project could cooperate
with geronimo for example. I suspect making aspects into a separate project
and hoping that they would cooperate nicely with geronimo would be a lot
harder than it seems.

I ask myself - how would I build a new container from scratch today, and I
am unable to really have a satisfactory answer which does not involve
aspects.


Mime
View raw message