如何根据数据量将数据存储在iPhone/iPad上?

How can data be stored on an iPhone/iPad based on data volume?

我要制作一个应用程序,它将连接到远程数据库服务器并以文本形式获取图像和产品描述。每个产品将有 3-5 张图片。 如何存储我从网络服务器获得的数据的最佳方式?

  1. 使用 NSUserDefault 不起作用,因为我有太多数据。

  2. 我不知道是否真的有必要使用 CoreData,因为我只有不到 30 天的时间来制作整个应用程序,学习核心数据可能需要比我更多的时间。

  3. 我找到了这个教程:http://www.raywenderlich.com/1914/nscoding-tutorial-for-ios-how-to-save-your-app-data

其中数据在本地存储而不使用 2. 而使用 NSCoding。这是正确的方向吗?有第四种方法吗?

我也想在 swift 中为 iOS8.X.X 编写应用程序。

当我们根据存储的数据量使用这种或另一种方法时,是否有任何 "strict" 指南? (ex.for 低数据量总是使用 NSUserDefaults 等)

欢迎任何建议。谢谢:)

意见:CoreData 是必经之路。是的,有一个学习曲线——但它也非常棒。一旦你掌握了它,你会发现它确实是一个强大的工具,并且可以让你在前进的过程中处理更复杂的场景。图像可以存储为存储在数据库外部但由 CoreData 管理的字段数据。

我不认为数据量是选择任何方法的重要决定因素 - 对于您描述的场景。这些选项中的任何一个似乎都没有任何实际限制。

话虽如此,您还没有说明您需要存多少 "products",是 10 还是 10,000?如果您将来必须添加搜索功能,您可能会发现 CoreData 会是更好的选择。

我也认为如果你真的没有时间学习 CoreData 并且你的截止日期很关键,那么跳过它是完全没问题的。