PersistentStoreCoordinator plays a major role in storing and retrieving managed objects from the Persistent Store via
ManagedObjectContext. We can see in the following figure how the three are related:
The Managed Object Model (an instance of
NSManagedObjectModel class) is created from the data model of our application. If there is more than one data model in our application, the Managed Object Model is created by merging all of the data models found in the application bundle. The managed object (instance of the
NSManagedObject class or its subclass) represents an instance of an entity that is maintained (managed) by the Core Data framework. A managed object is an instance of an Objective-C class, but it differs from other objects in three main ways:
A managed object must be an instance of
NSManagedObjector of a class...