S'abonner :  Newsletters    Magazines
[ COMPRENDRE ]
La programmation orientée aspects
Encore à l'état de laboratoire, la programmation orientée aspects répond aux besoins de modulariser des parties techniques habituellement dispersées dans le code.

Claire Rémy , 01 Informatique (n° 1642), le 13/07/2001 à 00h00

La programmation orientée aspects, ou AOP (Aspect Oriented Programming), est une nouvelle manière de modulariser un programme. En effet, la programmation orientée objets définit des unités fonctionnelles autonomes. Mais pour assurer cette autonomie, un certain nombre de méthodes doivent être répétées - par exemple, celles concernant la synchronisation, la distribution, le partage de ressources, l'optimisation de performances, la gestion des erreurs, la supervision ou la persistance. Un programme orienté aspects comprend donc un " aspect de base " correspondant à la partie métier, qui concerne l'utilisateur, et les aspects plus techniques, relatifs à ces thèmes transversaux. Ces derniers sont développés de manière indépendante, éventuellement avec un langage spécifique, ce qui permet de les confier aux experts, l'utilisateur s'occupant de l'aspect de base. Ce mode de programmation donne la possibilité de réutiliser un aspect d'une application dans une autre ou d'une partie du programme dans un autre. Il simplifie également la maintenance de l'application, les aspects techniques pouvant être modifiés indépendamment de l'évolution fonctionnelle, et inversement.

Imaginée il y a quelques années par Gregor Kiczales au Xerox Parc (Palo Alto Research Center), la programmation orientée aspect est apparentée à d'autres approches, comme la métaprogrammation, la programmation adaptative (Northeastern University) ou la " programmation subjective " (IBM). Le concept a d'abord été appliqué au langage Lisp, puis le même groupe de chercheurs du Parc a mis en oeuvre ces idées dans AspectJ, une extension de Java. En France, l'essentiel des travaux sur l'AOP est mené à l'Ecole des mines de Nantes.

POUR/CONTRE
  • + La modularisation par aspects est intéressante si une chose est vraie à travers différents objets ou classes.
  • + L'évolution est plus modulaire : tous les changements ont lieu dans un seul aspect.
  • + Le code résultant est plus court
  • - L'AOP ne s'applique que dans certains cas.
  • - Pas de technique pour identifier automatiquement les aspects.
  • - Pas d'outils commerciaux, produits de laboratoire seulement.


  • > Logiciel : Avast! Edition Professionnelle 4
    Détecte tous les virus, les vers et les Trojans.

    publicité
    > Jeu : Fifa 2010
    La dernière mouture EA Sports est enfin arrivée, essayez-la !

    classement FAI
    Retrouvez chaque semaine le classement des fournisseurs d'accès avec ip-label 1 Bouygues Telecom 2 Free 3 Orange > Plus de détails
    offres d'emploi
    Stockage
    Dvico TViX HD 1To. Disque dur numérique. Comparez les prix !

    Service 01net
    Newsletters 01net
    abonnez vous gratuitement !
      
    01Informatique
    01 INFORMATIQUE
    L'hebdo de référence des décideurs informatiques.
    Micro Hebdo
    MICRO HEBDO
    L'hebdo qui vous simplifie la micro
    et Internet.
    L'Ordinateur Individuel
    L'ORDINATEUR INDIVIDUEL
    Le mensuel informatique qui vous informe et vous conseille.
    Tous droits réservés © 1999 - 2009 Internext - 01net.