我一直在开发iPhone应用程序,刚开始添加CoreData以实现持久性。然而,我陷入了一个两难的境地,
上下文:我有实体名为Person,Person Entity有一个属性名称。
任务:更改Person对象的名称。(NSManagedObject)
性能测试:哪个选项在性能方面会更快更好?
选项1:假设对象仅创建一次
选项2:每次创建新对象。
注意:我只有一个属性!名称。想象一下,我有游戏和用户被要求提供他们的玩家名称。我知道这样一个小任务的性能差别不大。但是如果我在硬核中实现什么呢?那么对于防守哪个更好?
感谢您的任何投入!
<小时/> 我的想法:在绩效方面,两种选择都应该相似。获取数据而不是更新和保存似乎与删除重新创建和保存类似。我希望有人证明我错了。
答案 0 :(得分:1)
选项1更好,因为选项2是坚果。
我还没有测试过性能,但是选项2似乎不太可能更快,因为创建对象会产生开销。但即使选项2略微加快,它也不具备逻辑意义,因此它不是构建代码的好方法。如果它仍然是您要表示的同一个人,则用相同的对象表示它们。其他任何事情只是以意想不到的方式在赛道上引发头疼,因为你开始时有一个奇怪的安排。 :)