2014-01-07 34 views
1

我正在尝试构建一个需要将单词和定义存储在设备某处的flashcard应用程序。什么是正确/最好的方式来存储这些信息?我已经阅读了有关预先填充核心数据的方法,但我读过的解决方案看起来像是黑客。这似乎是许多应用程序所需的基本功能,所以我在这里错过了一些东西?为ios离线flashcard应用程序存储单词

回答

1

核心数据是去这里的路。关于预填充持久性存储并将其包含在您的应用程序包中并没有什么不妥之处。

+0

在阅读plists之后,我认为Core Data是一条路。我需要存储相当多的数据,绝对超过推荐用于plists的最大2MB。 – shoopdelang

0

核心数据看起来像flashcard应用程序的矫枉过正。我可能只是将内容保存到plist。这个内容是只读还是需要在运行时更新?

如果您需要更新它,您可以在启动时复制文档目录中的plist复选框,如果它不存在,请将它从软件包复制到文档目录中。您也可以使用与Core Data数据库相同的方法,但除非您熟悉Core Data,否则学习它的学习曲线可能不像flashcard应用那样简单。

+1

核心数据如何过度杀伤? plist当然不是要做的记忆效率的事情。如果有任何变化,为什么要筛选整个数据? – Mundi

+0

@Mundi,我的意思是在努力方面的矫枉过正。核心数据很难包围你的头。如果你已经爬上了学习曲线,并且熟练掌握了它,那么一定要使用它,但是对于flashcard应用程序,你有一个平坦的静态数据库。您不需要SQL查询,索引搜索,连接,KVO更新或其他任何操作,因此Core Data的功能并没有真正发挥作用。 –

+0

确实如此,但核心数据也很简单。最有可能的是他必须记录关于所查看的闪存卡的一些信息,所以它不是静态的。我们也不应该对数据负载做任何假设。 – Mundi