优化数据获取以获得有效的加载时间

时间:2012-09-06 15:24:03

标签: iphone ios uitableview

我是iOS开发的新手,我无法确定如何在发布时有效加载我的应用数据。我的应用程序包含一个UITableView,其中填充了一系列歌曲。每个单元格显示有关歌曲的数据:当前用户评级(如果评级)和平均值。用户评级(平均所有用户的评级)。我正在使用Parse进行后端数据存储。

在发布时,我的应用会运行两个查询。第一个查询提取歌曲以填充表格。然后它计算平均值。用户评级(我的后端架构包括计数对象:rating1_count,rating2_count等,当用户评价歌曲时递增)。它还将歌曲分为单独的数据模型阵列:topTracksOfTheWeek,topTracksOfTheMonth,topTracksAllTime。

第二个查询获取当前用户的所有评级歌曲。然后,它将此查询与第一个查询进行比较,以将用户评级数据嵌入到第一个查询中,以形成应用程序的数据模型。

我想将第一个查询限制为50首歌曲来优化加载时间。但是,使用我当前的数据模型,我需要查询数据库中的所有歌曲来计算所有平均值。用户评分,然后将歌曲订购到topTracks数组。

我能想到的唯一解决方案是定期运行服务器端脚本来计算平均值。用户评分。我必须在我的数据库中为脚本排序的topTracks数组创建一个新类。在我的应用程序中,我会懒得对topTracks数组进行第三次查询。

1 个答案:

答案 0 :(得分:0)

为什么不通过以下方式最小化客户端和服务器端操作:a)在添加新评级时存储和重新计算平均评级b)获取订购和分页的歌曲,订单类型和页面大小可以用不同的查询支持或相同查询参数。

理想情况下,如果可以在服务器端计算,则不在移动设备上进行任何计算。