简介
第一眼看到Core Data 令人生畏的复杂架构关系,很多人都会有无从下手的感觉
可是,一旦理解了架构图中各个部件的组成及相互之间的关系,就能体会到Core Data API 的简
洁和直观了
Core Data stack(技术堆栈):如果能够理解Core Data stack 中的各个成员所扮演的角色,那么再
使用Core Data 就不会感觉到困难了
1.1-什么是CoreData Stack?
Core Data stack 是Core Data 的核心,由一组Core Data 核心对象组成
NSManagedObjectContext 对象管理上下文: 负责管理模型的对象的集合
NSManagedObjectModel 被管理的对象模型: 负责管理对象模型
NSPersistentStoreCoordinator 存储调度器: 负责将数据保存到磁盘的
1.2-CoreData Stack中的对象是如何协调工作的呢?
· 三者之间的关系示意图
官方
分为两部分
1.对象图管理
2.数据持久化
在这两部分的中间,即堆栈中间,是持久化存储协调器(Persistent Store Coordinator, PSC)。通过它将对象图管理部分和持久化部分绑在一起。当这两部分中的一部分需要和另一部分交互,将通过PSC 来调节
上图表示,一个工程可以有多个管理模型的Context,一个存储调度器可以调度多个存储器,不过在一般的开发中,我们只需要一个Contect和一个存储器就足够了