Chapter 5
Preparing for Change: Migrations and Versioning
By the end of Chapter 4 you had mastered a great deal of the Core Data architecture and functionality by building a fully functioning, albeit somewhat simple, Core Data application. You’ve now got enough Core Data chops to build a solid app, send it to your testers, and then on to the App Store.
But what happens if you change your data model and send a new version of your application out to testers who already have the previous version? Consider the SuperDB app. Let’s say you decide to add a new attribute to the Hero entity; make one of the existing, currently optional attributes required; and then add a new entity. Can you just send the program out to your users or will this cause ...