Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Librerias Para Signal Y Slot

Iniciado por tamat, 24 de Febrero de 2004, 11:51:16 PM

« anterior - próximo »

tamat

 Descubrí el sistema de Signal/Slot gracias a QT (qué remedio) y la verdad es que me sorprendió muy gratamente. Para los que nunca hayan trabajado les diré que los signals slots son una manera de simplificar el problema de los callbacks (algo que en C++ se complica muchisimo) permitiendo interconectar las instancias de una manera sencilla y muy muy versatil.

La idea es que el programador defina en sus clases qué metodos pueden 'recibir mensajes' (slots) y qué 'mensajes pueden ser emitidos' (signals), y despues conecte slots de instancias a mensajes de otras instancias en tiempo de ejecución lo cual en algunos contextos resulta extremadamente util, como por ejemplo en el tema GUIs donde resolver el problema de - quiero que al pulsar este boton se ejecute esta función - puede hacerse un poco complicado.

Normalmente los sistemas signal/slots suelen ir integrados en librerias más grandes como QT o Boost ya que estas los requieren para enlazar temas como el antes mencionado GUI o por ejemplo para el tema networking, o input. Suelen ser cosas que van asociadas a eventos.

El problema está en que si quieres usar este sistema tienes que 'casarte' con alguna librería y estas normalmente no permiten aislar el sistema signal/slot por lo que te ves obligado a llevar todo el peso.

Pues cual ha sido mi sorpresa al encontrar la SlotSig Library. No he tenido tiempo de probarla pero si es cierto lo que su autor dice (y parece que si) entonces sin duda puede ser una pieza de codigo obligada para cualquier proyecto que desarrolle. No requiere de metacompilador (algo que sí requiere QT), es compatible con el sistema signal/slot de otras librerias (esto tengo que verlo) y es muy ligero.

Podeis encontrar más información en la web de SlotSig Library.

Pero ahora me surge una duda, ¿os casariais con una pieza de codigo que obliga a estructurar todo tu codigo de una manera?, no hablamos de algo que va aislado o que se puede separar, es algo arraigado hasta el ultimo header, y eso me preocupa.

Si alguien puede aportar algo de información lo agradeceré.
Por un stratos menos tenso

CoLSoN2

 pues yo sí utilizaría una librería similar si ofreciese cuantiosos beneficios, y este sistema lo hace. Yo estoy usando un sistema de signal/slot en un proyecto en python que estoy haciendo (que no hace falta ninguna virguería porque los callbacks están tirados) y va genial. Me va bien saber de esta librería para cuando vuelva a C++ :)
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






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.