concepto de delegate

03/10/2005 - 22:45 por lucho | Informe spam
Gente:

¿Cual es el concepto de : delegate?

Preguntas similare

Leer las respuestas

#6 Eduardo A. Morcillo [MS MVP VB]
04/10/2005 - 16:39 | Informe spam
Mostrar la cita
Mas comodo es "Reflectorear" (o sea usar Reflector).

Mostrar la cita
Si es algo simple probablemente sea mas practico un delegado que andar
declarando interfaces y clases, sobre todo si es dentro de una misma
aplicacion. Como un delegado es una clase seguramente es mas costoso en
terminos de memoria y rendimiento que usar una interface, pero tiene sus
ventajas como por ejemplo el llamado asincrono del metodo.

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
http://mvp.support.microsoft.com/pr...4EF5A4191C
#7 Eduardo A. Morcillo [MS MVP VB]
04/10/2005 - 16:41 | Informe spam
Mostrar la cita
Ignorado :-)

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
http://mvp.support.microsoft.com/pr...4EF5A4191C
#8 Leonardo Azpurua [mvp vb]
04/10/2005 - 18:30 | Informe spam
"Eduardo A. Morcillo [MS MVP VB]" <emorcillo .AT. mvps.org> escribió en el
mensaje news:uTdc$
Mostrar la cita
A ver.

Una interfaz es una definición "abstracta" de un tipo.
Si usas una interfaz, debes "encarnarla" en una instancia de una clase que
implemente esa interfaz.
¿No tienes que crear igualmente una clase, con la misma penalización que si
utilizas un delegado?

Por otra parte, pensandolo bien, se me hace dificil encontrar un ejemplo
practico no trivial donde utilizar un delegado en vez de una clase que
implementa una interfaz no sea consecuencia de algun tipo de error de
diseño.

Pero a veces, gracias a Dios, las soluciones de algunos problemas son
"triviales" (con frecuencia tanto que no hacen falta ni interfaces ni
delegados) :)

Salud!
#9 Eduardo A. Morcillo [MS MVP VB]
04/10/2005 - 20:15 | Informe spam
Mostrar la cita
Depende, porque la interface puede estar implemetada en un objeto que ya
tienes creado de antemano. Pero de todas formas la llamada al metodo por
medio de la interface es directa mientras que con el delegado no.

Mostrar la cita
Revisando el framework en busca de delegados que no se usen para
notificaciones (eventos y callbacks) he encontrado unos pocos (seguramente
hay mas que no he visto):

System.Threading.ThreadStart
System.Reflection.MemberFilter
System.Reflection.TypeFilter
System.Text.RegularExpressions.MatchEvaluator

Y todos parecen seguir una misma regla, ser usados por un solo metodo de una
sola clase. Quizas esa sea la regla a seguir para elegir si usar una
interface o un delegado.

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
http://mvp.support.microsoft.com/pr...4EF5A4191C
#10 lucho
04/10/2005 - 23:03 | Informe spam
Gracias a Leonardo y Eduardo por sus aclaraciones.
Ads by Google
Search Busqueda sugerida