是否使用 Core Data?
Use Core Data or not?
我正在创建一个应用程序,可以向用户显示某些设备的状态。状态可以随时改变,用户可以刷新数据。我想使用一种存储数据的方式,以便用户始终能够在不需要互联网连接的情况下看到最新状态并减少加载时间。
我目前在 Core data
和 SQLite
之间做出选择。
对于我的情况,我应该选择哪一个,为什么?
使用 CoreData 始终是更好的选择。
- Core Data 构建于 SQLite 之上,因此您可以通过任何一种方式使用 SQLite :)
- 核心数据与对象一起工作,所以不用担心与查询一起工作。
- 复杂的查询和数据检索更容易。
- 数据库锁和其他同步错误是自动处理的。
终于,它拥有了您现在需要的一切。
首先核心数据不是数据库。因此,如果您对未来的数据库使用有感觉,而不是转向 SQLite.
核心数据是一个管理对象图的框架。核心数据通过将对象图写入磁盘来保存该对象图。
SQLite 是 SQL 的轻量级版本,因此它限制了 SQL 语言的一些复杂功能,是的,它是一个纯数据库。
核心数据不是数据库,但是您可以像管理数据库表和属性一样管理对象和实体。
结论:
去核心数据,它会减少数据库连接打开和查询的时间。正如我所说,它不是数据库,因此所有数据库限制都不在图片中。
Core Data 是最好的选择,但如果您想以某种方式将应用程序移植到 android 或 windows 并希望保持代码相似,那么您可以选择 SQLITE,因为 SQLite 是得到所有主要平台的支持。而核心数据只是iOS
的一部分
我正在创建一个应用程序,可以向用户显示某些设备的状态。状态可以随时改变,用户可以刷新数据。我想使用一种存储数据的方式,以便用户始终能够在不需要互联网连接的情况下看到最新状态并减少加载时间。
我目前在 Core data
和 SQLite
之间做出选择。
对于我的情况,我应该选择哪一个,为什么?
使用 CoreData 始终是更好的选择。
- Core Data 构建于 SQLite 之上,因此您可以通过任何一种方式使用 SQLite :)
- 核心数据与对象一起工作,所以不用担心与查询一起工作。
- 复杂的查询和数据检索更容易。
- 数据库锁和其他同步错误是自动处理的。
终于,它拥有了您现在需要的一切。
首先核心数据不是数据库。因此,如果您对未来的数据库使用有感觉,而不是转向 SQLite.
核心数据是一个管理对象图的框架。核心数据通过将对象图写入磁盘来保存该对象图。
SQLite 是 SQL 的轻量级版本,因此它限制了 SQL 语言的一些复杂功能,是的,它是一个纯数据库。
核心数据不是数据库,但是您可以像管理数据库表和属性一样管理对象和实体。
结论:
去核心数据,它会减少数据库连接打开和查询的时间。正如我所说,它不是数据库,因此所有数据库限制都不在图片中。
Core Data 是最好的选择,但如果您想以某种方式将应用程序移植到 android 或 windows 并希望保持代码相似,那么您可以选择 SQLITE,因为 SQLite 是得到所有主要平台的支持。而核心数据只是iOS
的一部分