So do most larger apps use Core Data in both the production version
and the prototype?
The best advice I’ve heard on that front is to make sure that you don’t let persistence infrastructure artefacts (for example,
NSManagedObject) escape from your model layer. That way you can change model layers without rewriting everything (it also helps isolate you from any potential weirdness in the persistence infrastructure).
the final product would be in the hundreds of thousands
CoreData can do that but you have to be really careful you don’t trip over some pathological behaviour. But the same would be true of any persistence infrastructure once you start dealing with that many objects. Accidentally deserialising 100,000 objects is likely to be slow no matter how efficient your model infrastructure is.
What’s your expected mutability pattern? Is this data going to be immutable? Or infrequently mutated? Or mutated a lot? And are the mutations scattered about randomly? Or with some obvious pattern, like mutating lots of related items at once?
Share and Enjoy
Quinn “The Eskimo!” @ DTS @ Apple