Différence entre AOP et OOP

Différence entre AOP et OOP
Différence entre AOP et OOP

Vidéo: Différence entre AOP et OOP

Vidéo: Différence entre AOP et OOP
Vidéo: Quelle est la différence entre un FNB et un fonds commun de placement? 2024, Juillet
Anonim

AOP contre OOP

AOP (Programmation orientée aspect) et OOP (Programmation orientée objet) sont deux paradigmes de programmation. Un paradigme de programmation est un style fondamental de programmation informatique. Les paradigmes de programmation diffèrent dans la façon dont chaque élément des programmes est représenté et dans la façon dont chaque étape est définie pour résoudre les problèmes. Comme son nom l'indique, la POO se concentre sur la représentation des problèmes à l'aide d'objets du monde réel et de leur comportement, tandis que l'AOP s'occupe de décomposer les programmes en différents problèmes transversaux.

Qu'est-ce que l'AOP ?

AOP est un paradigme de programmation, qui consiste à décomposer un programme en zones de fonctionnalité cohérentes (appelées préoccupations) qui couvrent plusieurs domaines, afin d'augmenter la modularité. La prise en charge des abstractions (telles que les classes, les méthodes, etc.) pour regrouper et encapsuler les préoccupations dans des entités uniques est fournie dans de nombreux autres paradigmes de programmation. Mais les préoccupations (telles que la « journalisation ») sont des exemples de préoccupations transversales, car chaque partie consignée du système est affectée par la stratégie utilisée pour la journalisation. L'objectif principal de toutes les implémentations AOP est d'avoir des expressions transversales appropriées pour capturer toutes les préoccupations en un seul endroit.

Qu'est-ce que la POO ?

En POO, l'accent est mis sur la réflexion sur le problème à résoudre en termes d'éléments du monde réel et sur la représentation du problème en termes d'objets et de leur comportement. Les classes décrivent les représentations abstraites d'objets du monde réel. Les classes sont comme des plans ou des modèles, qui rassemblent des éléments similaires ou des choses qui peuvent être regroupées. Les classes ont des propriétés appelées attributs. Les attributs sont implémentés en tant que variables globales et d'instance. Les méthodes des classes représentent ou définissent le comportement de ces classes. Les méthodes et les attributs des classes sont appelés les membres de la classe. Une instance d'une classe est appelée un objet. Par conséquent, un objet est une structure de données qui ressemble étroitement à un objet du monde réel.

Il existe plusieurs concepts importants de POO tels que l'abstraction de données, l'encapsulation, le polymorphisme, la messagerie, la modularité et l'héritage. Généralement, l'encapsulation est réalisée en rendant les attributs privés, tout en créant des méthodes publiques qui peuvent être utilisées pour accéder à ces attributs. L'héritage permet à l'utilisateur d'étendre des classes (appelées sous-classes) à partir d'autres classes (appelées super classes). Le polymorphisme permet au programmeur de substituer un objet d'une classe à la place d'un objet de sa super classe. Typiquement, les noms trouvés dans la définition du problème deviennent directement des classes dans le programme. Et de même, les verbes deviennent des méthodes. Certains des langages OOP les plus populaires sont Java et C.

Quelle est la différence entre AOP et OOP ?

La principale différence entre la POO et l'AOP est que l'objectif de la POO est de décomposer la tâche de programmation en objets, qui encapsulent des données et des méthodes, tandis que l'objectif de l'AOP est de décomposer le programme en préoccupations transversales. En fait, AOP n'est pas un concurrent de la POO, car il est issu du paradigme de la POO. AOP étend la POO en résolvant quelques-uns de ses problèmes. AOP introduit des moyens astucieux de mettre en œuvre des préoccupations transversales (qui auraient pu être dispersées à plusieurs endroits dans l'implémentation POO correspondante) en un seul endroit. Par conséquent, AOP rend le programme plus propre et moins couplé.

Conseillé: