缓存NSArray文本/词典并使其在整个应用程序中可用的最佳方法?

时间:2012-12-12 07:51:17

标签: xcode json caching core-data nscache

我正在请求一个大约10-100个对象的数组,所有这些对象都是我解析为NSDictionary的JSON对象。我想缓存它并在整个应用程序中使用这些数据。 NSCache对此有用还是更好地使用NSUserDefaults或者实际上最常用的方法是在整个应用程序中保存数据? CoreData?我是一个iOS新手,并没有太多的经验。

1 个答案:

答案 0 :(得分:3)

您正在寻找的是一种在您的应用中访问数据的方法。这通常是角色Model plays in MVC

CoreData和NSUserDefaults是保存数据的方法,因此当您的应用关闭或退出时,数据不会丢失。它们可以是模型的一部分,但无助于在整个应用程序中访问这些数据。

如果您想要一个存储数据的对象,并且可以在代码中的任何位置访问,您可能正在寻找单身人士。

作为this excellent Stack Overflow answer explains

  

使用单例类,我总是将它们用于需要从应用程序内部的任何位置访问的全局数据管理器类。

作者提供了some sample code you might find helpful

这将允许您创建一个可在整个程序中访问的简单对象,该对象具有您的NSDictionaries。因为它是一个单例,程序中的其他类可以轻松访问它 - 这意味着它们也可以轻松访问存储在其中的NSDictionaries。

如果您确定要保存数据,那么该单例对象也是编写任何加载和保存代码的理想位置。

祝你好运!

其他好资源是: