Modélisation par aspects et transformation vers AspectJ et Hyper/J
L'utilisation des mécanismes et concepts de l'approche Aspect permettent d'améliorer l'implémentation des patrons de conception par objets. Toutefois, un certain manque de consensus sur les concepts et relations fondamentales de la technologie Aspect et la diversité des langages de programmation proposés dans ce courant rendent difficile l'expression de nouvelles structures de patrons indépendamment d'un langage de programmation spécifique. Nous proposons de contourner cette difficulté en nous appuyant sur un méta-modèle général pour la modélisation par aspects que nous avons élaboré en isolant les concepts et relations communs à AspectJ et Hyper/J, deux des principaux langages de programmation par aspects actuels. Cet article présente ce méta-modèle ainsi que deux méta-modèles plus spécifiques, respectivement à AspectJ et Hyper/J. Des règles de transformations de modèles sont également proposées pour passer d'un modèle instance du méta-modèle général à un modèle instance d'un méta-modèle spécifique. Nous illustrons cette approche sur l'exemple du patron Stratégie du GoF.
The use of the aspect-oriented concepts and mechanisms can improve the objectoriented design patterns implementation. However a certain lack of consensus on the basic aspect-oriented concepts and relations and the diversity of the suggested programming languages related to the Aspect approach, make it uneasy to express new pattern structures in a way that is not dependent from a specific programming language. We propose to avoid this difficulty by relying on a general meta-model for the aspect-oriented modeling that we worked out by identifying the common concepts and relations of both AspectJ and Hyper/J, two of the principal today aspect-oriented programming languages. This paper introduces this meta-model along with two meta-models that are respectively specific to AspectJ and Hyper/J. Transformation rules from a general model that is an instance of the general metamodel to the instance of one of the specific meta-model are also proposed. We illustrate this approach with the GoF Strategy pattern.
O.HACHANI, D.BARDOU
méta-modélisation, modélisation et programmation par aspects, transformation de modèles, patrons de conception, UML, aspectJ, hyper/J.
meta-modelling, aspect-oriented modelling and programming, transformation rules, design patterns, UML, AspectJ, Hyper/J.
Français
|