【问题标题】:Plist vs SQLite vs Core Data for a rss reader type application?用于 rss 阅读器类型应用程序的 Plist vs SQLite vs Core Data?
【发布时间】:2011-06-12 16:26:06
【问题描述】:

我正在开发一个类似于 RSS 新闻阅读器的应用程序。我需要一些机制来在本地存储解析的 XML。我尝试使用 Plist,但随着应用程序复杂性的增加,它很快变得非常复杂。

我想知道对于经常需要向设备读取/写入数据的应用程序来说,存储数据的最佳方法是什么?

【问题讨论】:

    标签: iphone objective-c core-data


    【解决方案1】:

    Plist 应该用于简单且有限的数据需求,这些需求有些静态。例如,它们在 PickerViews 中表现出色。 SQLite 和 CoreData 提供真正的数据访问和操作,如果数据在变化,数据完整性。数据模型可以规范化,实体之间可以保持动态关系。此外,可以使用关系连接执行复杂的查询。

    我已经发布了我使用 SQLite 的应用程序,虽然更多的是因为 iOS SDK(前核心数据),但标准 SQL 语法使工作量减少了。

    我的最新应用程序 SureSafe Home Inventory 完全使用 CoreData。 CoreData 生成并使用 SQLite 数据库。 Core Data 是我在早期应用程序中必须编写的 SQLite 代码之上的一层。虽然最初的学习曲线可能有点困难,但值得改变!!我花了大约 2 个月的时间阅读所有内容并使用 Apple 示例代码变得精通一些。但它解决了良好的数据库编码带来的诸多难题。甚至还有数据库模型版本控制,因此如果您以后有升级,您可以添加新的数据库字段并迁移现有的客户数据。

    冗长...但是如果您是新开始,请使用 CoreData。我与 Apple 没有任何关系。

    史蒂夫·S。

    【讨论】:

      【解决方案2】:

      我发现 CoreData 和 SQLite 的使用都相当简单,同时考虑到您所暗示的复杂类型。根据您要存储的内容,一个会比另一个更好。对于你正在做的事情,我猜 SQLite 可能是最好的。有关两者之间的进一步讨论,请参阅以下问题:

      【讨论】:

        【解决方案3】:

        使用 plist 实际上是您提到的 3 中最简单的形式。如果您打算存储大量数据,我建议您使用 plist,而不是 CoreData 和 SQlite。

        或者,您可以将 XML 文件下载到您的 Documents 目录并进行相应的解析。

        【讨论】:

        • 真的,对于大量数据,您建议使用 plist 而不是 Core Data 或 SQLite?
        • 也许我读错了问题。与 Plist 相比,CoreData 和 SQlite 的复杂性更大。存储大量数据我会使用 CoreData。
        猜你喜欢
        • 2011-04-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-08-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多