Come suggerito da Mike, un NSDictionary è un modo semplice per memorizzare rapidamente una tonnellata di coppie chiave / valore. Lo svantaggio di questo approccio è la perdita della comodità di accesso dopo il fatto. Devi ricordare che cosa era ogni chiave per accedere a qualsiasi valore. Ciò può significare tornare all'API del servizio Web o alla risposta JSON per ottenere la chiave necessaria. Inoltre non ottieni alcun aiuto dal compilatore.
D'altra parte, la creazione di una sottoclasse NSObject con proprietà per ogni coppia chiave / valore ti dà tutta la comodità, ma ci vuole tempo per analizzare i valori, specialmente con tutti quelli di cui stai parlando. Generalmente utilizzo l'approccio della sottoclasse perché mi piace la comodità di avere la guida del compilatore con il completamento automatico e la verifica del tipo. È anche possibile determinare quali proprietà sono di lettura / scrittura e quali sono di sola lettura. Aggiungo un initWithDictionary: metodo per creare la sottoclasse e analizzare la risposta JSON all'interno di quel metodo. Questo tipo di aiuto allontana il modello di dati dall'applicazione stessa