搜索核心数据与Plist

dar*_*sky 4 iphone core-data objective-c plist ios

我正在搜索350个字典对象.将数据存储在Core Data或plist中进行搜索会更有效吗?

基本上,每个对象都是一个包含8个键值的字典.350个对象在线存储在JSON提要中.我想在应用首次启动时下载Feed,然后将数据存储到核心数据或plist中.在应用程序中,有一个表默认有几个对象.然后,用户可以添加/删除这些项目.当用户单击添加时,我想向用户显示所有350个对象,并提供搜索机制.

在这种情况下,我应该将JSON提要存储到Plist还是使用Core Data?

Pet*_*ese 5

这取决于.如果您没有遇到实际的性能问题,请为您的应用程序做更具可读性和适用性的问题.例如,如果要保存用户可以添加某种记录的数据,则核心数据会处理常见情况,并且可以与获取的数据控制器一起使用以非常顺利地管理表.它还可以轻松绑定到您的对象模型,因此您无需执行键查找.

如果您有一个合理数量的静态数据或可编辑值到静态键列表,并且您总是需要加载所有这些,请继续并加载一个plist以方便使用.发布有关您的具体情况的更多信息,我可以更新我的答案.

更新:

我想你可能想要使用Core Data有几个原因.首先,如果这些对象中的每一个都具有相同的8个键,则您需要使用绑定对象而不是字典来表示每个对象.其次,核心数据旨在被搜索,分类和过滤.第三,使用NSFetchedResultsController将它绑定到表(使用右索引)或滚动选择器并不困难.如果您将NSManagedObject的属性命名为与8个键相同,则使用KVC从JSON加载也非常容易.

你可以使用一个plist,但必须做更多的腿部工作.