gpt4 book ai didi

ios - Core Data 和 Swift 中的计算属性与持久存储

转载 作者:搜寻专家 更新时间:2023-10-31 22:14:35 31 4
gpt4 key购买 nike

我觉得这是一个愚蠢的问题,但我是新手,找不到明确的答案。

我有一个事件实体和一个 session 实体。每个 Activity 可以有很多 Session。每个 session 都有一个持续时间属性。

现在我想要一个事件的平均 session 持续时间。我应该向我的 Activity 实体添加 averageSessionDuration 属性并更新它并在用户添加或删除 session 时保留它,还是我可以只向我的 Activity 类添加一个计算属性并让它在调用时计算平均 session 持续时间?

我猜想使用计算属性平均 session 持续时间的计算次数会比必要的多一些,但我不知道这是否重要,它最终会有所不同吗?

我不知道幕后发生了什么,是否获取每个 session 持续时间并取平均值比仅获取在必要时更新并持久化的 averageSessionDuration 属性要昂贵得多?在这种情况下,最佳做法是什么?还有什么我想念的吗?

提前致谢

丹尼尔

最佳答案

它很可能不会对性能产生任何影响,但如果您使用计算属性而不是尝试确保它在保存其他值时始终保持最新,那么代码会更清晰(我认为)。

如果您害怕性能问题,您可以始终缓存每个 session 的计算值,并在您更改应用程序中的值时使缓存无效。这可能是两个世界中最好的。

这是一个品味问题,我相信双方都有支持的论据。

关于ios - Core Data 和 Swift 中的计算属性与持久存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33273252/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com