Managed Object Context
Суть
NSManagedObjectContext — «рабочая область» (scratchpad) Core Data. В нём живут NSManagedObject, накапливаются вставки, изменения и удаления, а save() одним шагом отправляет их в хранилище (или в родительский контекст). Контекст отслеживает изменения (hasChanges, insertedObjects, updatedObjects), умеет rollback(), поддерживает undo и валидацию.
Продолжение ответа с кодом и уточняющими вопросами интервьюера — в приложении DevPrep.
Полный ответ — в DevPrep