miércoles, 11 de abril de 2007

¿qué es un Aspecto en una instancia de clase u objeto?

¿qué es un aspecto en la programación orientada a aspectos POA?

Un aspecto es una serie de operaciones que se repiten y pueden afectar a diferentes objetos y operaciones diferentes.
Un caso común es la métrica o testeo de la aplicación en tiempo. Si tenemos que incluir el código relacionado con medir el tiempo que tarda un método en ejecutarse dentro del propio método, entonces estamos mezclando aspectos diferentes e independientes del programa, tales como la ejecucion de una suma y el tiempo que tarda el producirse.



**** en desarrollo pero se refiere al aspecto en su forma más abstracta o dicho de otra forma el aspecto como perteneciente a un proceso

  1. El aspecto se puede referir al estado temporal (entendido como fase temporal o estado) del ciclo de vida de un objeto.
  2. También se puede entender como un comportamiento (interfaz) de la clase o instancia.

Los aspectos se implementan en forma de interceptores.
Un interceptor es un proxy.
En un programa orientado a aspectos debe existir un objeto que se encarga de devolver las nuevas instancias de las clases implicadas en la ejecución del programa. Este objeto encargado de la creación de nuevos objetos (el típico SpringFrameWork o Jboss Seam) devuelve proxys que tiene el mismo comportamiento que la clase esperada pero además aporta más comportamientos a la clase.


Ideas a desarrollar:
Entender la programación como un algoritmo de ciclos temporales/vitales de la instancia de un objeto.