|
<< |
|
< |
|
> |
|
>> |
|
|
De nombreux projets de recherche visant à implanter les paradigmes
de la POA sont désormais bien avancés et proposent des outils
puissants permettant leur mise en uvre. Il existe plusieurs projets d'implémentation de la POA, en Java
notamment. |
|
AspectJ est une implémentation open-source pour Java du Xerox PARC.
AspectJ est une extension du langage Java qui définit une sémantique permettant de mettre en place les concepts POA. AspectJ fournit les outils de compilation, débugging et de documentation du code. Le compilateur dAspectJ construit une classe compatible avec les spécifications du bytecode Java, permettant à une JVM dinterpréter cette classe. |
|
|
|
|
|
|
Chaque modification nécessite une nouvelle compilation |
|
|
|
|
|
|
Un serveur + un atelier UML + une IHM de configuration. |
|
|
|
|
|
|
|
Ce nest pas un nouveau langage avec une nouvelle grammaire
pour coder les aspects. Les aspects sont écrits en Java pur, évitant
ainsi lapprentissage dune nouvelle syntaxe et lintroduction
dun compilateur supplémentaire. JAC permet dajouter ou denlever les aspects dynamiquement. Cette fonctionnalité est très utile lors du développement ou de la maintenance de lapplication. Il est par exemple possible de modifier les caractéristiques de cohérence ou de synchronisation de vos objets, sans redémarrer le serveur. JAC distribue automatiquement les aspects sur les serveurs distants. Ce qui permet aux aspects JAC de gérer des préoccupations telles que le déploiement, la cohérence des données, la tolérance aux pannes ou la montée en charge. Il propose deux niveaux de granularités: Le premier niveau est le niveau de programmation. Cest le même niveau quAspectJ, il permet de programmer de nouveaux aspects. Ce niveau requiert des compétences poussées en POA. Le second niveau est le niveau de configuration. Il permet aux développeurs de configurer les aspects existants afin quils répondent aux exigences de leur application. Ce niveau ne demande pas de compétences particulières en POA et peut être facilement utilisé par nimporte quel développeur Java. JAC est aussi un serveur dapplications orienté aspect. |
|
<< |
|
< |
|
> |
|
>> |
|