可可 – 当(不)滥用NSUserDefaults时

可可 – 当(不)滥用NSUserDefaults时,第1张

概述我不知道什么是准则: 1 – 我可以从NSUserDefaults读取多久 2 – 我可以在NSUserDefaults中合理存储多少数据 显然,NSUserDefaults可以使用多少限制,但我无法确定什么是合理的,什么不是。 其中一些例子: >如果我的游戏有一个计算机选择作为其中一个玩家,我将使用NSUserDefaults来保存该布尔值。很清楚但是,每次我想知道计算机是播放器还是应该使用一个 我不知道什么是准则:
1 – 我可以从NSUserDefaults读取多久
2 – 我可以在NSUserDefaults中合理存储多少数据

显然,NSUserDefaults可以使用多少限制,但我无法确定什么是合理的,什么不是。

其中一些例子:

>如果我的游戏有一个计算机选择作为其中一个玩家,我将使用NSUserDefaults来保存该布尔值。很清楚但是,每次我想知道计算机是播放器还是应该使用一个实例变量,我的游戏中访问NSUserDefaults也是合理的?假设在这里我需要检查布尔每秒。答案是相同的是100毫秒吗?每10秒呢?
>如果我的游戏有50个移动对象,并且当用户退出应用程序时,我想要他们的位置和速度存储,NSUserDefaults是否合理存放该数据的位置? 20个移动物体呢?怎么样200?

解决方法 不要担心限制。相反,问自己这个简单的问题:

这是偏好吗?

如果是首选项,那么应该是用户默认值。这是用户默认值。如果没有,那么它应该在documents目录中(或者在Mac上,可能在应用程序支持中)。

在iOS上,您可以通过设置应用程序中是否适合(如果可能)将其放置在设置包中进行显示和编辑来判断是否为首选项。在Mac OS X上,通常可以通过将它放在首选项窗口中来判断是否适合。

当然,这取决于你的判断。例如,Stanza for Mac出错,将非偏好设置放在“首选项”窗口中。

你也可以通过它的相反来考虑这个问题:

这个用户创建的数据?

您将具有默认值的首选项不是用户创建的数据;它是用户重写的数据。不要失去它,但它告诉你应该保持它。

总结

以上是内存溢出为你收集整理的可可 – 当(不)滥用NSUserDefaults时全部内容,希望文章能够帮你解决可可 – 当(不)滥用NSUserDefaults时所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1041024.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存