0

将我们存储在 NSUserDefaults 中的任何信息移动到 CoreData 是否可以?通常我们在 NSUserDefault 中存储一些用户设置类型的数据,或者用户的信息,

如果我们将其作为键值对存储在单个实体中,是否会对性能造成影响?

或者这是一个不好的做法。

我觉得在 Core Data 中包含与应用程序相关的所有数据,在 NSUserDefaults 中包含登录用户的信息,这很奇怪。

4

1 回答 1

2

如果它的登录用户信息应该在钥匙串中。

您可以拥有一个没有关系的实体,没有什么可以阻止它,但现在访问这些详细信息需要您打开模型存储文件。如果您只在商店开门时才需要它们,那么问题不大。提取实体实例的过程仍然是一个获取请求,因此构成比 NSUserDefaults 选项更多的代码。

没有硬性规定,数据存储的每个区域在不同时间访问更有用,您应该期望在您的应用程序中使用它们中的每一个。您还应该考虑数据应该保留多长时间以及需要多少副本(现在,以及将来可能)。

通常,对于用户帐户详细信息,我会将它们放在核心数据模型之外。

于 2013-06-07T06:46:13.940 回答