我想缓存加载的数据,以便减少应用程序的开始时间。
我知道存储应用程序数据的几种策略
即。核心数据,nsuserdefaults,归档。
现在我的方案是假设我有最多10个对象的数组,每个对象有5个字段。
所以我无法决定存储这个数组的策略,以后再检索它。
谢谢。
答案 0 :(得分:2)
永远不要将缓存数据存储在NSUserDefaults
中;这不是它的用途。
存档很昂贵,不应该使用。管理起来也困难得多。
核心数据几乎总是正确的答案,除非数据存储是微不足道的。
Archiving,也称为序列化是与其他格式相比将数据写入磁盘的最昂贵方式之一。这里的答案很难解释确切的细节,但它归结为一个旧的设计,其表现不如Core Data等更现代的持久性系统。在使用核心数据时,将两者并排放置将会显着提高性能(由于内部线程,缓存,后端的数据库支持等)。
Core Data也可以处理您的数据模型生命周期和结构这一事实只是在性能提升的基础上发挥作用。