Lo que haría: Datos básicos
Debería usar Core Data para el feed social. Core Data proporciona una funcionalidad tan rica con una huella tan pequeña. Pasará bastante tiempo antes de que alguien alcance el final de su capacidad de almacenamiento en un dispositivo iOS. Lo más importante, si el resto de su proyecto está utilizando Core Data, probablemente esté construyendo infraestructura para admitir y abstraer recuperaciones, sincronización, almacenamiento en caché, observación, etc.
Un ejemplo concreto: uso de datos básicos para un feed
En mi proyecto más reciente: en Everest: vive tus sueños y logra tus metas personales, todo fue un NSManagedObject. Usuarios, comentarios, elementos de feed, elementos de notificación, todo. Creamos un mecanismo de sincronización para comunicarse con el servidor y reglas de mapeo para convertir el JSON del servidor en NSManagedObjects consumibles y manejables.
Un ejemplo contrario: rodar su propia capa de datos específicamente para un feed
Como contraejemplo, en Jawbone UP en las primeras implementaciones, utilizamos Core Data para todo excepto el feed social. Es decir, para el feed, hicimos exactamente lo que usted está proponiendo. Utilizamos un simple NSArray de NSDictionaries que recuperamos de un caché. Perdimos todo el caché incorporado que proporciona Core Data para un mecanismo de almacenamiento en caché personalizado. Perdimos toda la verificación del tipo de tiempo de compilación en las relaciones y los atributos. Perdimos toda la infraestructura que habíamos construido a partir de las consultas, el procesamiento y la observación en aras de la “simplicidad”. Todo esto se redujo a una discusión y decisión de ingeniería que acordamos (de mala gana) temprano y varios de nosotros lamentamos cada vez que necesitábamos lidiar con la alimentación.
- Si quiero agregar una descripción de la aplicación para la tienda de iOS en, digamos, japonés, ¿también necesito traducir y localizar de manera más general una aplicación de idioma inglés al japonés?
- ¿Está lista tu aplicación Marshmallow y 3D Touch?
- ¿Alguien puede sugerir tutoriales de la aplicación Group Chat para iOS usando Swift y Firebase?
- ¿Debo usar la arquitectura Viper para mi próxima aplicación iOS, o todavía es muy nueva?
- ¿Cómo detectas si un iPhone está roto?
Lo que creo que deberías hacer: ser coherente
Mi recomendación sería usar lo que usa en toda la aplicación. Si usa Core Data, continúe usando Core Data. Si usa alguna otra práctica como NSArray’s, NSCoding, JSON directo o cualquier otra cosa, continúe usándola. Cualquiera sea su preferencia o nivel de experiencia con Core Date, tiene una base de código funcional y una larga línea de desarrolladores que se harán cargo de usted en el futuro. Lo menos que puede hacer es mantener un cierto nivel de consistencia para que tengan menos con lo que necesitan familiarizarse.