Programacion orientada a aspectos

Programación orientada a aspectos c#

Uno de los componentes clave de Spring Framework es la programación orientada a aspectos (AOP). La programación orientada a aspectos implica la división de la lógica del programa en partes distintas denominadas preocupaciones. Las funciones que abarcan varios puntos de una aplicación se denominan preocupaciones transversales y estas preocupaciones transversales están conceptualmente separadas de la lógica de negocio de la aplicación. Hay varios buenos ejemplos comunes de aspectos como el registro, la auditoría, las transacciones declarativas, la seguridad, el almacenamiento en caché, etc.

La unidad clave de la modularidad en la programación orientada a objetos es la clase, mientras que en la programación orientada a objetos la unidad de modularidad es el aspecto. La inyección de dependencia le ayuda a desacoplar los objetos de su aplicación entre sí y la AOP le ayuda a desacoplar las preocupaciones transversales de los objetos a los que afectan. La AOP es como los triggers en lenguajes de programación como Perl, .NET, Java y otros.

Se trata de un módulo que tiene un conjunto de APIs que proporcionan requisitos transversales. Por ejemplo, un módulo de registro se llamaría aspecto AOP para el registro. Una aplicación puede tener cualquier número de aspectos en función de los requisitos.

Primavera de la programación orientada a aspectos

En informática, la programación orientada a aspectos (AOP) es un paradigma de programación que pretende aumentar la modularidad permitiendo la separación de preocupaciones transversales. Lo hace añadiendo un comportamiento adicional al código existente (un consejo) sin modificar el propio código, sino especificando por separado qué código se modifica mediante una especificación de “acceso directo”, como “registrar todas las llamadas a funciones cuando el nombre de la función empieza por ‘set'”. Esto permite añadir a un programa comportamientos que no son fundamentales para la lógica del negocio (como el registro) sin saturar el núcleo de código de la funcionalidad.

->  River flows in you guitar

La programación orientada a aspectos incluye métodos y herramientas de programación que apoyan la modularización de las preocupaciones a nivel del código fuente, mientras que el desarrollo de software orientado a aspectos se refiere a toda una disciplina de ingeniería.

La programación orientada a aspectos implica la división de la lógica del programa en partes distintas (las llamadas preocupaciones, áreas cohesionadas de funcionalidad). Casi todos los paradigmas de programación admiten algún nivel de agrupación y encapsulación de problemas en entidades separadas e independientes, proporcionando abstracciones (por ejemplo, funciones, procedimientos, módulos, clases, métodos) que pueden utilizarse para implementar, abstraer y componer estos problemas. Algunas preocupaciones “atraviesan” múltiples abstracciones en un programa, y desafían estas formas de implementación. Estos problemas se denominan problemas transversales o problemas horizontales.

Spring boot aop

Entiendo la programación orientada a objetos, y he estado escribiendo programas OO durante mucho tiempo. Parece que la gente habla de la programación orientada a aspectos, pero nunca me he enterado de lo que es o de cómo utilizarla. ¿Cuál es el paradigma básico?

->  Jesus en la india

La POO aborda el problema de las preocupaciones transversales, que sería cualquier tipo de código que se repite en diferentes métodos y que normalmente no puede ser refactorizado completamente en su propio módulo, como con el registro o la verificación. Entonces, con AOP puedes dejar esas cosas fuera del código principal y definirlas verticalmente así:

Desafortunadamente, parece ser sorprendentemente difícil hacer que AOP sea realmente útil en una organización normal de tamaño medio-grande. (El soporte del editor, la sensación de control, el hecho de que se empiece con las cosas no tan importantes que conducen a la putrefacción del código, la gente que se va a casa con sus familias, etc.)

PS. En realidad, creo que una de las bellezas de AOP es también su talón de Aquiles: No es intrusivo, permite que la gente lo ignore si puede, por lo que será tratado como una preocupación secundaria en la mayoría de las organizaciones.

Preocupaciones transversales

La AOP (programación orientada a aspectos) es un estilo de programación que puede adoptarse para definir ciertas políticas que, a su vez, se utilizan para definir y gestionar las preocupaciones transversales en una aplicación. En esencia, se trata de un paradigma de programación que permite que la aplicación se adapte a los cambios, por lo que cuando se aprovecha la programación orientada a aspectos en las aplicaciones, se puede aumentar la modularidad de la aplicación mediante la separación de intereses. Puede utilizar la AOP para reducir el desorden del código mejorando la legibilidad y la capacidad de mantenimiento de su código. Más bien, complementa la programación orientada a objetos proporcionando otra forma de lograr la modularidad y también de reducir el desorden del código.

->  Iphone 6 screen replacement

¿Cómo puedo lograr la POO en mi aplicación? Para implementar la POO en sus aplicaciones, lo primero que debe hacer es aislar los aspectos de su aplicación de la lógica de negocio. Lo más importante que debes tener en cuenta al diseñar los aspectos es que deben ser independientes y no deben tener ninguna dependencia de la aplicación. También debes ser capaz de probar los aspectos de forma independiente. A continuación, debes aplicar esos aspectos al código fuente de la aplicación, entretejiéndolos allí donde los necesite la aplicación. Una de las formas de implementar AOP en tus aplicaciones es mediante el uso de atributos.

Esta web utiliza cookies propias para su correcto funcionamiento. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad