2012-03-02 59 views
1

我对iOS开发很感兴趣。我已经阅读了一些初学者书籍,目前正在通过iTunes提供的斯坦福大学课程。存储数据列表/数组的最佳做法

我只是一个初学者,但我真的很关心从一开始就正确地学习东西。我通过书籍或在线学到的很多东西似乎并不符合“最佳实践” - 据我所知,最佳实践可能超出了目前正在教授的水平,但我仍然讨厌学习那些以后只能重新学习它们是错误的。

我希望有人能够提供一些关于如何在应用程序中正确存储数据的建议。也就是说,如果我从数组或字典中动态生成表格单元格,那么存储数组或字典从哪里来的数据的最佳方式是什么?

如果我是,比如说,通过表格显示文章列表,我希望能够轻松更新该列表,并在某个时候更新应用程序,我假设我不想努力 - 将该列表直接编入模型中,但从其他位置获取该数据。

我从所有人那里学到的例子都显示了plists的用法,但后来说你实际上不会在实际应用中用plist来做这件事。我不是在寻找如何去做我在问什么,只是希望有人能指引我朝着正确的方向......就像,你会使用SQLite吗?如果你的内容是最好解析一个web源代码来自网络?

我只是想找出最好的方法来做到这一点。我意识到没有真正的“最好”的方法来做到这一点,但我注意到我从网上的一些教程看到的示例代码和来自Apple的示例代码之间存在巨大差异 - 也许我错了,但我假设苹果的代码示例是写得很好的代码。

+0

对于大量的用例来说,定位器非常适用。你能给我们一个链接吗?它说“你真的不会在一个真正的应用程序中用plist来做这件事”?在我看来,一个好的经验法则是:如果你有足够小的静态数据(不是用户可编辑的),完全适合内存,而且你不需要搜索那些数据,那么plists就是要走的路。如果数据量很大,并且/或者您需要搜索和/或您希望某些用户可编辑的内容,那么使用SQLite或Core Data可以更有意义。 – 2012-03-02 19:10:30

+0

这是一个非常普遍的问题,您可以在Apple的文档中找到很好的答案,例如[*档案和序列化编程指南*](https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/Archiving/Archiving.html)和[* Property List Programming Guide *](https:// developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/PropertyLists/Introduction/Introduction.html)等等。如果您有任何具体问题,请编辑上述问题以说明问题。 – Caleb 2012-03-02 19:14:25

+0

@Ole Begemann - 我记得特意阅读了Apress的“开始iOS 5开发 - 探索iOS SDK”中有关plists的评论,并且在教程中在线显示了如何动态填充表格,我不记得链接,但我记得这个例子显示了一些错误,并且说了一些关于“可怕的错误”的内容。无论如何,为了保护这些作者,也许我误解了他们的陈述,并且这意味着你不会使用plists来获取大量数据?如果plists是有效的,那么他们正是我所需要的。谢谢(你的)信息! – canoebrain 2012-03-02 19:29:16

回答

3

一些常见的方法是:

  • 的Plist - 是的,他们是如果你的要求不高
  • JSON一个完全合法的数据存储 - 如果这是如何您的数据在来自哪里网络
  • SQLite - 嵌入式关系数据库系统。 FMDB是一个流行的Objective-C接口。
  • 核心数据 - 苹果的解决方案(可以使用各种格式,包括SQLite作为后端)
  • [一些自定义的文件格式] - 你选择要拿出任何数据格式

实际上,你需要阅读各种解决方案 - 他们都有优点和缺点,这些优点和缺点将根据你的需要权衡不同。

+0

谢谢pmjordan!这正是我所期待的。 – canoebrain 2012-03-02 19:37:01

相关问题