| Liste Articles: [0-A] [A-C] [C-F] [F-J] [J-M] [M-P] [P-S] [S-Z] | Liste Catégories | Une page au hasard | Pages liées | ||||||
La programmation orientée aspect (POA, en anglais aspect oriented programming - AOP) est une évolution
de la programmation orientée
objet.
| Sommaire |
On part d'un constat : les diverses fonctionnalités nécessaires au fonctionnement d'une application complexe provoquent un entremêlement des appels de méthodes entre les différentes classes qui composent une application. Une classe va utiliser les services d'une autre classe pour arriver aux différents résultats attendus.
Par exemple, si on considère une application bancaire servant à faire un virement d'un compte à un autre, duquel on attend deux fonctionnalités :
En programmation orientée objet, la procédure permettant de réaliser ces fonctionnalités va de façon typique combiner la gestion de la journalisation au code gérant la transaction.
A l'inverse, en programmation orientée aspect, deux classes totalement distinctes vont être créées. On va ensuite créer un aspect, c'est-à-dire une structure qui va permettre de tramer les deux classes (cette structure est appelée classe de tramage en AspectJ), en permettant de spécifier que, avant (ou après) tout appel à la méthode effectuant la transaction, un appel à la méthode de journalisation doit être effectué, en spécifiant ses paramètres. Ce principe de fonctionnement permet de gérer les 2 classes de manière totalement distincte, sans se préoccuper de la manière dont elles vont interagir.
Un aspect permet donc de définir :
Le couplage entre les classes est quasiment nul en utilisant ce principe, ce qui présente de nombreux avantages :


