En primer lugar, ver What describes the Application Delegate best? How does it fit into the whole concept?
El delegado aplicación es el delegado para la aplicación. No es el lugar para guardar todo lo que no sabes dónde más poner. No es el lugar de almacenamiento para los globales. Es el delegado para el objeto UIApplication
. Por lo tanto, es el lugar correcto para poner el código relacionado con el inicio de la aplicación, la terminación, el cambio hacia y desde el fondo, etc. Cosas que tienen que ver con la forma en que la aplicación se ajusta al sistema operativo.
El delegado de la aplicación es un controlador, por lo que no debería contener datos. Los datos van en el modelo. El delegado de la aplicación puede crear el modelo al inicio y entregarlo a otros controladores, pero no es la API para el modelo. A menudo, el modelo es un singleton en lugar de ser creado por el delegado de la aplicación. Ambos enfoques tienen ventajas.
La mayoría del código de ejemplo coloca el código del modelo en el delegado de la aplicación porque, para ejemplos simples, requiere un poco menos de código. Pero en los programas reales hace que la aplicación delegada sea demasiado complicada y perjudica significativamente la reutilización del código. El delegado de su aplicación generalmente debe ser bastante pequeño, y la mayoría de los métodos que contiene deben ser parte de <UIApplicationDelegate>
.
Me gusta la respuesta de LavaSlider aquí http://stackoverflow.com/questions/8421138/importing-appdelegate – Rhubarb