He creado objetos que son interfaces para un servicio web. Un objeto típico sería un "TaskService". Cuando un cliente utiliza uno de estos objetos, invoca uno de los métodos del servicio (como "GetTasks") y el servicio se activa de forma asíncrona para llamar al servicio web remoto y publicar los datos recuperados a través de un delegado.Singleton con un delegado: ¿Buena o mala idea?
Actualmente, para utilizar uno de estos servicios, debe crearlo con [[TaskService alloc] init], pero decidí que tiene más sentido convertir cada servicio en un objeto singleton.
Es común ver objetos únicos que mantienen referencia a los delegados? Mi principal problema con el diseño, es que cada objeto, siempre que requiera el uso de un servicio en particular, tendrá que establecerse como el delegado antes de invocar el servicio, lo que no me parece del todo correcto ... ¿Qué pasa si otro objeto ¿Debería establecerse como el delegado entre usted y usted como delegado e invocando el servicio?
¡Muchas gracias de antemano!
Saludos, Nick
que no tienen idea de lo que es un multiplexor delegado (emisora de algún tipo?), Pero suena demasiado complicado para mí para tratar de poner en práctica, así que voy a tratar de mantenerse alejado de nada por el estilo! Para implementar una cola de operaciones, ¿estaría en lo cierto al pensar que cada método tendría que tomar un delegado/parámetro como argumento?Entonces, ¿se podrían poner en cola "solicitudes", con delegados asociados que se llamarán una vez que se completen? –
Un multiplexor de delegado es un término que acabo de componer para el código que escribiría dentro de su singleton para descubrir a qué delegado enviar un resultado dado. Una opción que encapsularía mucho mejor cada operación (una búsqueda y notificación del delegado). Así que sí, las solicitudes se pondrían en cola de esta manera. – Rayfleck