Cocoa 数据存储问题
另一个新手问题:在用Obj-C编写的Cocoa应用程序中存储数据的最佳方式是什么?例如,如果我想创建一种“测验者”,用预先编写的(和用户编写的)问题对用户进行测验?我将如何存储这些问题和答案?核心数据Cocoa 数据存储问题,cocoa,data-storage,Cocoa,Data Storage,另一个新手问题:在用Obj-C编写的Cocoa应用程序中存储数据的最佳方式是什么?例如,如果我想创建一种“测验者”,用预先编写的(和用户编写的)问题对用户进行测验?我将如何存储这些问题和答案?核心数据 谢谢 当然是核心数据 它能处理一切。。请看这里: 这是一个完整的API,可以处理: 数据库和运行时对象之间的ORM 坚持 自动构建工具(如ER编辑器) 它是现成的,您几乎不需要实现任何东西。。您只需向对象控制器查询数据,就可以访问数据 对于您的问题,此解决方案的规模可能过大,但您将通过一个简单
谢谢 当然是核心数据 它能处理一切。。请看这里: 这是一个完整的API,可以处理:
- 数据库和运行时对象之间的ORM
- 坚持
- 自动构建工具(如ER编辑器)
- 它是现成的,您几乎不需要实现任何东西。。您只需向对象控制器查询数据,就可以访问数据
对于您的问题,此解决方案的规模可能过大,但您将通过一个简单的案例学习如何使用它,我将在将来派上用场。正如@Jack所示,核心数据无疑是一个很好的选择。还有其他一些选择
NSCoding
-您可以使模型对象符合NSCoding协议(类似于java.io.Serializable
),这意味着您可以直接将它们写入文件。我发现,当我没有大量数据需要持久化时,这是一个很好的选择,而我持久化的数据具有相对简单的结构内部/左侧/外部/交叉/自然联接
或其他多表运算符
NSUserDefaults
-如果您的数据非常小,基本上只是键值对,那么您可能可以将其全部放入NSUserDefaults
对象中,该对象将为您保留在首选项文件中。但是,即使您的数据很简单,NSUserDefaults
如果数据很多,也可能不是最佳选择好啊我考虑了一会儿核心数据,它看起来相当复杂,我不确定是否要使用它。。。但现在我肯定会用它。谢谢你回答我的问题!哇,谢谢。我以前从没听说过一半的。另外:在核心数据中,是否可以将数据“导出”到外部文件中?(对于“导入”它的其他应用程序?)或者它已经处于可导出状态?我只是想知道,@Nano8Blazex任何进口或出口都必须由您用代码完成。