Relations AOPRflexion - PowerPoint PPT Presentation

1 / 8
About This Presentation
Title:

Relations AOPRflexion

Description:

indirection de fct vers nonfct d j connu (liaison statique) ... de fct vers nonfct connu tardivement (liaison dynamique) interposition g n rique ... – PowerPoint PPT presentation

Number of Views:45
Avg rating:3.0/5.0
Slides: 9
Provided by: rangir
Category:

less

Transcript and Presenter's Notes

Title: Relations AOPRflexion


1
Relations AOP-Réflexion
  • Journées ARCAD
  • Nantes, 13 14 septembre 2001
  • Thomas Ledoux

2
Constats
  • Recherche AOP, réflexion, SoC
  • Différentes équipes, différentes cultures
  • Différents projets, différents prototypes
  • Différents terminologie, différentes techniques
    bien que similitude !
  • Conséquences
  • Pas darticles de fond (biblio réflexion)
  • Communauté moins crédible ?

3
Terminologie
  • Composant fonctionnel (fct)
  • business object, code de base, aspect de base,
    ...
  • représente une entité du domaine dapplication
  • fournit des services pour la manipulation de ces
    entités
  • Composant non-fonctionnel (nonfct)
  • concern, aspect technique,
  • fournit des services indépendants dun domaine
    particulier (partisan ?)
  • contexte middleware services de bas niveau
    (transactions, persistance, réplication, )
  • Liaison fct-nonfct
  • association dun composant fonctionnel avec un
    composant non-fonctionnel

4
Types de liaison fct-nonfct
  • inline (ex AspectJ en théorie)
  • réification de fct, pas de réification de nonfct
  • nonfct inséré dans fct
  • précoce (ex AspectJ en pratique)
  • réification de fct, réification de nonfct
  • indirection de fct vers nonfct déjà connu
    (liaison statique)
  • interposition spécifique
  • tardive (ex AspectJ/RAM)
  • réification de fct, réification de nonfct
  • indirection de fct vers nonfct connu tardivement
    (liaison dynamique)
  • interposition générique (double indirection ?)

5
Interposition
  • Un bout de code permettant lindirection
  • hooks (RAM), code généré à partir des pointcut
    designators (AspectJ)
  • Moment dinsertion de ce code
  • Compile-time, load-time, run-time
  • Déclaration de ce code
  • pointcut designators dans AspectJ
  • pas vraiment déquivalent en réflexion (modulo
    Iguana)
  • forme lttype, endroitgt

call/reception/execution
signature dans fct
6
Réification de la liaison fct-nonfct
  • Moment de réification
  • Compile-time, load-time, run-time
  • Différentes terminologies
  • Weaving
  • Introduction du code dinterposition ?
  • Fusion de fct et nonfct ?
  • MOP compile-time vs run-time

7
Deux phases distinctes
Introduction de linterposition
RAM/AspectJ
RAM/Javassist
Guaranà, metaXa
AspectJ
OpenJava, OpenC, Iguana
Javassist, Naive
Réification de la liaison fct-nonfct
compile time
load time
run time
8
Conclusion
  •  Any problem in computing can be solved by
    another level of indirection 
  • David Wheeler
Write a Comment
User Comments (0)
About PowerShow.com