《数据模型版本管理、迁移与自定义管理对象实战》
1. 数据模型版本管理
在数据模型的开发过程中,版本管理至关重要。当创建新的数据模型版本时,旧版本会被重命名,例如旧版本可能被命名为 SuperDB 3.xcdatamodel 等。这种编号方式对于所有非当前版本都很有意义,每个版本的编号都比前一个版本高。保持当前模型的名称不变,能让开发者轻松知道应该对哪个版本进行更改。
当前数据模型版本在图标上会有绿色复选标记。例如,在图中 SuperDB.xcdatamodel 是当前版本,SuperDB 2.xcdatamodel 是前一个版本。开发者可以安全地对当前版本进行更改,因为前一个版本的副本会被保留,这使得在发布新版本时能够将用户的数据从旧版本迁移到新版本。
若要更改当前版本,可选择想要设为当前版本的数据模型,然后从“设计”菜单的“数据模型”子菜单中选择“设置当前版本”。虽然不常进行此操作,但在某些情况下,比如需要恢复到应用程序的旧版本时,就可能会用到。
数据模型版本标识符方面,虽然可以通过在“组和文件”面板中选择数据模型并按 I 调出“信息”窗口来为数据模型分配版本标识符,如 1.1 或版本 A,但这个标识符仅供开发者自己使用,Core Data 会完全忽略它。Core Data 会对数据模型文件中的每个实体进行哈希计算,哈希值会存储在持久存储中。当 Core Data 打开持久存储时,会使用这些哈希值来确保存储的数据版本与当前数据模型兼容。因此,开发者无需担心为版本控制而递增版本号,Core Data 会通过比较存储的哈希值和当前数据模型计算出的哈希值来确定持久存储是为哪个版本创建的。
2. 使用版本化数据模型
在之
超级会员免费看
订阅专栏 解锁全文
4044

被折叠的 条评论
为什么被折叠?



