[aosd-discuss] "AOP considered harmful"

Awais Rashid marash at comp.lancs.ac.uk
Mon Apr 25 10:16:41 EST 2005


> When giving lectures on AOP I already faced the question of the
> "encapsulation breaking" issue, 

This is a question that is often posed to me too. Firstly, IMO, any new way
of software development promotes a different way of approaching and solving
the problem one is trying to address. If AOP sidesteps some of the
encapsulation issues, is it really wrong? If the AOP solution is a more
natural fit so then is encapsulation stopping us from getting a more
suitable solution to our problem? For instance, C++ has friends which break
encapsulation. If I had a penny for each time I saw a friend function used
in C++ programs ... :) Secondly, there are AOP models that offer the notion
of contracts between aspects and classes, e.g., Ceasar, as well as
role-based composition models. So saying that AOP breaks encapsulation is
not really true. Also, some works, for instance our own work on using AOP in
database evolution (cf. [1]), have used AOP to preserve encapsulation and
information hiding. So in many ways it depends whether a programmer really
wants to use AOP to break encapsulation. Just because an AOP technique
allows one to do so, doesn't mean one has to.

[1] Awais Rashid, Nicholas A. Leidenfrost: Supporting Flexible Object
Database Evolution with Aspects. GPCE 2004: 75-94

Awais.

> and if I do not mistake myself Jonathan
> Aldrich is proposing some construct to address this (by restricting the
> join points to which advice may apply).
> 
> But what about the fact that AOP breaks Dijkstra's requisite of a sound
> mapping from variables to values based only on a coordinate system of
> non-program values?
> Max, what were the reactions/conclusions you reached while presenting
> the paper at EIWAS?
> 
> Cheers,
> 
> -- Eric
> 
> On Apr 25, 2005, at 10:28, Gregor Kiczales wrote:
> 
> > Its also interesting to note that the Burton analyst spoke
> > by phone and email to a number of people I know of (likely
> > he spoke to more of course). And asking around a lot I
> > haven't been able to find a single expert the Forrester
> > analyst consulted.
> >
> >
> >
> >> -----Original Message-----
> >> From: discuss-bounces at aosd.net
> >> [mailto:discuss-bounces at aosd.net] On Behalf Of Alexandre Vasseur
> >> Sent: Monday, April 25, 2005 1:35 AM
> >> To: stoerzer at fmi.uni-passau.de
> >> Cc: discuss at aosd.net
> >> Subject: Re: [aosd-discuss] "AOP considered harmful"
> >>
> >> Max, thanks for clarifying that. I am wondering if the Forrester
> >> analyst contacted you to write his report (that I had the chance to
> >> read entirely - not just the abstract) and if you told him so ?
> >>
> >> No need to say that the Burton Group report published recently seems
> >> to give a contradictory echo to this one by the way.
> >> http://www.burtongroup.com/research_consulting/publicdoc.aspx?cid=679
> >>
> >> Alex
> >>
> >>
> >> On 4/25/05, Maximilian Stoerzer <stoerzer at fmi.uni-passau.de> wrote:
> >>> Hi all,
> >>>
> >>> as one of the authors of the referenced paper, just a short
> >> note: This
> >>> paper was written for a panel discussion, and indeed intended to be
> >>> provocative.
> >>>
> >>> However, I think that AOP as we see it now can result in
> >> reduced program
> >>> understandability, if used in the wrong way. Additionally AOP imho
> >>> strongly depends on tool support (thanks for ajdt, great
> >> tool in that
> >>> context!).
> >>>
> >>> Our intention in comparing advice and GOTO was to outline these
> >>> problems, as I think they have to be addressed to make AOP
> >> a long term
> >>> success story, especially when considering software
> >> maintenance - and in
> >>> no way AOP bashing, please don't get us wrong ;o)
> >>>
> >>> Best regards,
> >>>      Max
> >>>
> >>> Eric Bodden wrote:
> >>>
> >>>>
> >>>> -----BEGIN PGP SIGNED MESSAGE-----
> >>>> Hash: SHA1
> >>>>
> >>>> To taday on
> >>>> http://slashdot.org/
> >>>>
> >>>> Eric
> >>>>
> >>>> - --
> >>>> Eric Bodden
> >>>> Chair I2 for Programming Languages and Program Analysis
> >>>> RWTH Aachen University
> >>>>
> >>>> -----BEGIN PGP SIGNATURE-----
> >>>> Version: PGP 8.0.3
> >>>>
> >>>> iQA/AwUBQmud18wiFCm7RlWCEQIuqwCeKHRXfAlPVVvedQFNCvWbC7iotL4AoJEJ
> >>>> BKwiqmo2X8f3iqA/FBpRnYsK
> >>>> =0M0e
> >>>> -----END PGP SIGNATURE-----
> >>>>
> >>>>
> >>>>
> >>>> __________________________________________________
> >>>> AOSD Discuss mailing list    -    discuss at aosd.net
> >>>> To unsubscribe go to http://aosd.net
> >>>
> >>> --
> >>> Maximilian Stoerzer
> >>> Lehrstuhl Software Systeme - FMI - University of Passau
> >>> Tel: +49 851 509 3096, eMail: stoerzer at fmi.uni-passau.de
> >>>
> >>> __________________________________________________
> >>> AOSD Discuss mailing list    -    discuss at aosd.net
> >>> To unsubscribe go to http://aosd.net
> >>>
> >>
> >> __________________________________________________
> >> AOSD Discuss mailing list    -    discuss at aosd.net
> >> To unsubscribe go to http://aosd.net
> >>
> >
> >
> >
> > __________________________________________________
> > AOSD Discuss mailing list    -    discuss at aosd.net
> > To unsubscribe go to http://aosd.net
> >
> 
> 
> __________________________________________________
> AOSD Discuss mailing list    -    discuss at aosd.net
> To unsubscribe go to http://aosd.net




More information about the discuss mailing list