Chapter    5

Preparing for Change: Migrations and Versioning

By now you have 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 send it on to the App Store.

But what happens if you change your data model and send a new version of your application 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 to your users, or will this cause problems with ...

Get More iPhone Development with Swift: Exploring the iOS SDK now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.