Ios 我的数据应该如何存储敏捷的

Ios 我的数据应该如何存储敏捷的,ios,Ios,也许这是一个非常基本的问题,但我一直在努力寻找一个合适的答案。我的应用程序将包含虚构角色的列表。每个角色都有一个名字、发行年份、唯一的ID号和一件配件/武器 用户将无法编辑、添加或删除字符。届时将有约1500份参赛作品。每个表视图单元格都将声明角色的名称,单击该名称将转换为包含所有信息的视图控制器 我的问题是如何将这些信息放入我的应用程序中,然后用于填充表视图?我尝试使用可编码和可解码,但这大大减慢了我的应用程序。我考虑过将信息添加到plist中,但我仍然不知道这是否是最好的方法 我建议使用co

也许这是一个非常基本的问题,但我一直在努力寻找一个合适的答案。我的应用程序将包含虚构角色的列表。每个角色都有一个名字、发行年份、唯一的ID号和一件配件/武器

用户将无法编辑、添加或删除字符。届时将有约1500份参赛作品。每个表视图单元格都将声明角色的名称,单击该名称将转换为包含所有信息的视图控制器


我的问题是如何将这些信息放入我的应用程序中,然后用于填充表视图?我尝试使用可编码和可解码,但这大大减慢了我的应用程序。我考虑过将信息添加到plist中,但我仍然不知道这是否是最好的方法

我建议使用core date,苹果已经改进了很多, 如果你今天有1500份参赛作品,在不久的将来你可能会有3000份参赛作品

对我来说,其中一个优点是谓词,
您还可以将核心数据与tableview链接:)

核心数据是一个选项,就像Realm一样是一个持久存储框架。这两种方法的优点都是查询的可能性,如果您熟悉w谓词,那么核心数据可能会更好。两者的缺点都是在更改数据模型时处理迁移问题


在您的情况下,如果您只是以只读方式显示此信息,并且不需要强大的查询、排序功能,那么您可以从捆绑包中的JSON文件加载此数据

您可以创建自定义JSON并使用它。但是@zheck建议最好在应用程序中包含一个数据库组件。这样做有多种原因

  • 可扩展性:您的数据可能会随着时间的推移而增加
  • 灵活性:您的数据格式可以更改
  • 易读易写:您可能需要更新数据

  • 这一清单还在继续。根据您的需求,有多种可用的数据库解决方案。虽然核心数据是一个非常强大的平台领域,但firebase类型的数据库解决方案为您提供了更大的灵活性和功能性

    使用核心数据。核心数据为您管理保存和撤消功能。它有一个持久性存储,可以跟踪更改,并且可以在任何时间自动刷新到磁盘。
    核心数据和相关类提供了将实体放入UITableView的简单方法,如NSFetchedResultsController

    听起来这很管用!我的所有信息都在电子表格中。我将其转换为核心数据的最佳方式是什么?如果您的应用程序具有Web服务,请在第一次启动时检索并加载它,否则,这里有一个解决方案: