Ios4 iPhone应用程序:存储/检索静态数据的最佳实践

Ios4 iPhone应用程序:存储/检索静态数据的最佳实践,ios4,Ios4,我需要加载大约500条静态数据记录才能显示。我想知道在使用xml文件、数组、sqllite和使用核心数据之间存储/检索数据的最佳实践,从简单性和性能上讲。这取决于具体情况 如果您以plist格式从xml加载到数组、字典、集合等中,那么您必须在一个大数据块中将其全部读入内存。如果记录相对较小且简单,即没有关系和自定义行为,那么xml将是最简单的解决方案 如果内存是一个问题和/或数据是复杂的,那么核心数据就是解决方法。它不仅简化了内存管理,还简化了与应用程序其他部分(尤其是UI)的交互 就像Tech

我需要加载大约500条静态数据记录才能显示。我想知道在使用xml文件、数组、sqllite和使用核心数据之间存储/检索数据的最佳实践,从简单性和性能上讲。

这取决于具体情况

如果您以plist格式从xml加载到数组、字典、集合等中,那么您必须在一个大数据块中将其全部读入内存。如果记录相对较小且简单,即没有关系和自定义行为,那么xml将是最简单的解决方案


如果内存是一个问题和/或数据是复杂的,那么核心数据就是解决方法。它不仅简化了内存管理,还简化了与应用程序其他部分(尤其是UI)的交互

就像TechZen所说的——这取决于你是在寻找编码的简单性还是效率/速度

XML是一种非常标准的方式,但很自然,您必须为其设置解析器,任何更改都意味着更新解析器。每次你第一次将文件加载到内存并开始处理它时,速度/效率都是明智的,所以这不是一个真正快速有效的解决方案,但它的实现非常简单

编写代码的最简单方法是使用
writeToFile
contentsofile
写入和读取数组。 但是数组和字典无论如何都是以XML文件的形式存储的——因此您可以省去编写解析器的时间,但在速度/性能方面仍然不会获得太多好处

SQLite/CoreData在速度和内存方面都很好,并且与应用程序的其他部分配合得很好,但是如果你只存储基本数据,那就太过分了,因为它占用了IMHO三个选项中最多的开发开销