Core Data是个框架,把数据当作对象来操作。
由Core Data提供的数据对象叫托管对象(managed objecgt),而Core Data 位于程序和持久化存储区之间。
托管对象模型里有对象图(object graph),对象图里有实体(实体类),实体创建托管对象。
托管对象持有一份相关数据的拷贝。可以看作数据库里某张表的某一行。
托管对象可以是NSManagedObject实例,但是一般情况下,它是某个NSManagedObject子类的实例。
所有托管对象都必须位于托管对象上下文(managed object context)里面,托管对象上下文位于RAM里面。为什么需要托管对象上下文?原因之一就是,磁盘盒RAM之间传输数据会有开销。读取磁盘的速度慢很多,不应频繁访问。但是,用托管对象的缺点是要用到save方法来把数据写回磁盘。托管对象上下文还可以支持撤销和重做功能。