NSUserDefaults,也是创造本地价值的好习惯吗?

时间:2011-08-08 19:00:42

标签: objective-c cocoa

我想知道在UserDefault中创建保存值的镜像是否是一种好习惯?

例如,如果我在UserDefault中存储参数“A”,那么在本地维护此值的副本并在UserDefault更改时更新它是有用的吗?

在我的应用程序中,我有必要经常读取参数“A”,在这种情况下,我认为从ivar而不是从NSUserDefault读取更好,但我不确定,所以我问如果有一个好的做法可以遵循。

2 个答案:

答案 0 :(得分:11)

对我来说似乎是额外的工作和premature optimization

在我的所有应用中,我总是在每次需要时检索NSUserDefaults,这从来都不是问题。保持代码简短明了。如果它成为一个问题,你可以轻松解决它。

答案 1 :(得分:0)

性能无关紧要,因为NSUserDefaults并非旨在保留大量信息或经常使用以致导致性能问题。

对于代码封装和重用,不要直接在执行与您的首选项无关的特定任务的代码上使用NSUserDefaults。例如:对图像着色的方法应该将用户偏好作为参数。直接在其他任何地方使用它。