Fundamentos de iOS iPhone MVC

¿Alguien sabe de una buena manera de comenzar con un model básico pero no usar Core Data todavía? Tengo una aplicación simple que no necesita save ningún dato (en este momento), pero no creo que Core Data sea excesivo.

No quiero usar App Delegate para almacenar datos, ni quiero almacenar datos en vistas individuales. Tenía la esperanza de encontrar algún tipo de solución de "transición" que me permitiera pasar a Core Data en el futuro.

He visto algunos ejemplos simples, pero requieren almacenar una instancia del model dentro de un controller de vista particular. Planeo tener varias vistas, así que quiero encontrar una mejor manera.

El model de datos para una aplicación puede ser tan simple como un dictionary, o una variedad de dictionarys, o una matriz de caracteres estilo C simple y antigua para ese tema. O bien, para ir un paso más allá, puede crear una class de model personalizada que no solo almacene los datos, sino que también sepa cómo manipularlos si es necesario para su aplicación.

Cómo cada controller tiene acceso al model es una pregunta diferente. A algunas personas les gusta usar un singleton (no lo hago) para que puedan acceder a él de manera global. Un enfoque mejor (IMO) es crear una instancia del model en un object como el delegado de la aplicación o el controller de vista raíz y luego pasar un puntero a todo el model o un puntero a una parte del model para ver los controlleres según sea necesario. Una aplicación de libreta de direcciones puede pasar solo un object Persona a un controller de vista de detalles de dirección, por ejemplo.