Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Aop

Iniciado por Astat, 10 de Marzo de 2004, 03:39:03 PM

« anterior - próximo »

Astat

 Aunque lleva ya tiempo propuesto, parace que poco a poco va ganando fuerza esta nueva metodologia de programacion orientada a "Aspectos", que parece ser una abstraccion por encima de los objetos (las clases del c++ vamos) de la antigua OOP, para relacionar objetos comunes.

Para mas datos : http://www.aspectc.org/

CoLSoN2

 podrías explicar un poco de qué va la AOP esta? en el faq de la web no lo mencionan..
Manuel F. Lara
Descargar juegos indie  - blog sobre juegos indie y casual
El Desarrollo Personal.com  - blog sobre productividad, motivación y espíritu emprendedor

Astat

 Por lo que se, los tres pilares de la AOP son: pointcuts, advice, y los aspect mismamente. Un ejemplillo de algo basico:

primero un poco de c++ de toda la vida... (ole)


class cUNO
{
public:
 void foo1()  { printf("Hola\n"); }
 void foo2()  { printf("Mundo\n"); }
};

int main ()
{
 cUNO c1;

 c1.foo1();

 printf ("\n\n");

 c1.foo2();
}



el primer aspect y uso de advice :huh:


aspect aspectoUNO
{
 advice execution("void %::foo%()") : after()
 {
   printf("aspectoUNO::after()\n");
 }

 advice execution("void %::foo%()") : before()
 {
   printf("aspectoUNO::before()\n");
 }
};


El siguiente codigo daria la siguiente salida por consola:


aspectoUNO::before()
Hola
aspectoUNO::after()


aspectoUNO::before()
Mundo
aspectoUNO::after()


Mas o menos vereis que lo que hace "advice execution" (% es un comodin). Podemos llamar gracias a el funciones en los eventos after(), before() y tambien around(). Este es el ejemplo mas chorra que se me ocurria...  (nooo)

CoLSoN2

 yo eso qué tiene de bueno? digo yo que se puede "simular" usando C++ no?
Manuel F. Lara
Descargar juegos indie  - blog sobre juegos indie y casual
El Desarrollo Personal.com  - blog sobre productividad, motivación y espíritu emprendedor

AlexHdez

 Ademas de que el segundo codigo es bastante mas largo que el codigo en c++ normal no?

Un saludo

Grugnorr

 Tratando el tema de los Atributos en C# (metainformación con la que marcas clases//métodos, etc y que puedes recuperar//investigar en ejecución) el experto en cuestión los enclavó en Aspect Programming. Mañana le echo un ojo a la web y a ver si saco algo en claro


PD:Purple# usa Aspect Programming, por lo que le entendí hay cosas para las que genera código en ejecución y lo compila y ejecuta al momento....
hat the hells!






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.