我即将开始一个新的 IOS 项目,我将使用 Core Data 作为我为最终用户存储数据的主要方式。我在应用程序的规划阶段遇到了一个问题,即如何保存、加载和删除核心数据对象。以下是我能想到的三种可能的方法:
方法 1
在 Application Delegate 中创建一个通用数据对象,我将使用该UISharedApplication
方法将其检索到每个视图控制器中。这意味着当应用程序启动时,它将创建一个带有 Getter 和 Setter 的对象。
方法二
创建数据模型类(Subclass ofNSObject
) 并在每个视图控制器中初始化它。这意味着每个视图控制器都必须拥有自己的 NSManagedObjectContext(应用程序委托将在启动时提供),它将在初始化时传递给数据模型类。这意味着在整个视图控制器中,它将使用它自己的数据模型类并从中调用方法。
方法 3
让每个单独的视图控制器自己进行保存。例如,a-(IBAction)didAdd;
将所有代码保存到数据库中。这将使进行有效的数据调用变得更加容易,因为它可以NSFetchResultsController
根据视图控制器(批量大小等)进行正确的设置。
我不确定哪种方法对我来说是最好的方法,如果你们中的任何人可以让我知道哪种方法最好,或者如果没有一种方法是好的,那么最好的方法是什么,我将不胜感激。