[英]Best practice of using restkit and core data
我正在构建一个不断与webservice
对话的应用程序。 因此,一直都在发布和获取数据。 但是我发布和获取的所有数据也应该保存在手机上。
问题1
当我浏览示例时。 我看到他们正在将所有数据加载到appDelegate
。 对于加载少量数据,这可能是最好的方法。 但就我而言,这仍然是最好的方法还是应该在ViewController Level
上执行此操作?
问题2
当我启动应用程序时,我检查了使用核心数据,这在appDelegate
为我生成了很多代码。 但是在这种情况下,我无法在viewController
级别上viewController
我的managedObjectContext
,对吗?
我的问题是,正确完成此任务的最佳方法是什么?
亲切的问候
问题1
当我浏览示例时。 我看到他们正在加载appDelegate中的所有数据。 对于加载少量数据,这可能是最好的方法。 但就我而言,这还是最好的方法,还是应该在ViewController级别上执行此操作?
为此,典型的示例代码是使用appDelegate。
如何最好地处理它完全取决于您的应用程序。 与使用应用程序委托相比,将数据传输封装到视图控制器中无疑是一个进步。 但是,根据您的应用程序,您可能还会设计一个更具体的数据加载控制器来封装所有相关行为。 的确,我认为后一种选择即使对于相对简单的项目也最有效。
问题2
当我启动应用程序时,我检查了使用核心数据,这在appDelegate中为我生成了很多代码。 但是在这种情况下,我无法在viewController级别上访问我的managedObjectContext,对吗?
如果查看appDelegate.h文件,则应该找到用于从控制器访问核心数据的属性:
@property (readonly, strong, nonatomic) NSManagedObjectContext *managedObjectContext;
@property (readonly, strong, nonatomic) NSManagedObjectModel *managedObjectModel;
@property (readonly, strong, nonatomic) NSPersistentStoreCoordinator *persistentStoreCoordinator;
您可以使用它通过[UIApplication sharedApplication].delegate
访问托管对象上下文,也可以将该代码从应用程序委托中分解为自己的模型管理器类。 同样,这完全取决于您的应用程序。 有些应用程序仅使用1个托管对象上下文,而处理更多内容的应用程序等等。如果您的应用程序非常核心地使用了核心数据,则可以保持原样。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.