¿Qué es la programación orientada a aspectos (AOP)? Usando el diagrama a continuación, el concepto se puede entender en unos segundos.
El problema de las preocupaciones transversales
Primero, eche un vistazo al diagrama de abajo y piense cuál podría ser el problema.
En el diagrama anterior, es fácil ver que las acciones relacionadas con el registro están en todas partes. Provoca dos problemas comunes:
1. Código enredado: el código de registro se mezcla con la lógica empresarial.
2. Dispersión de código: causada por código idéntico colocado en cada módulo.
La función de registro se denomina «preocupación transversal». Es decir, una función que se utiliza en muchos otros módulos, como autenticación, registro, rendimiento, comprobación de errores, persistencia de datos, gestión de almacenamiento, por nombrar solo algunos.
Al utilizar la Programación Orientada a Objetos (OOP), podemos definir un sistema de bajo acoplamiento y alta cohesión. Sin embargo, cuando se trata de preocupaciones transversales, no las maneja bien por la razón de que no tiene relación entre las preocupaciones centrales y las preocupaciones transversales.
Solución de AOP