Qué significa "Delegado" en Xcode

Xcode, el entorno de desarrollo de Apple, permite programar apps para iPhone, iPod touch e iPad en Objective-C y Cocoa. Cocoa es la API que conecta con servicios del dispositivo (mapas, cámara). Un delegado es una clase auxiliar en Cocoa que permite a un objeto notificarle cuando ocurren ciertos eventos.

Rol del delegado

Recibe mensajes de un objeto anfitrión que tiene una referencia al delegado. El objeto envía mensajes cuando necesita su input para una tarea.

Por qué se necesitan delegados

El objeto solo puede realizar una tarea genérica, así que necesita el delegado para una tarea más específica.

Cómo funciona la delegación

El objeto notifica al delegado cuando necesita su input. El delegado proporciona comportamiento específico en varios puntos de la tarea.

Patrón de diseño delegación

Es común en Cocoa. Es mejor práctica usar delegación en lugar de subclasificar una clase.