Iphone 数据模型设计
我为我的iOS应用程序设计数据模型时有点卡住了。我使用的后端服务有两个数据类:Iphone 数据模型设计,iphone,objective-c,ios,uitableview,data-modeling,Iphone,Objective C,Ios,Uitableview,Data Modeling,我为我的iOS应用程序设计数据模型时有点卡住了。我使用的后端服务有两个数据类:歌曲和评级(用户评级)。当我的应用程序启动时,我目前正在进行5个单独的查询以进行分析,这5个查询构成了我的UITableView的5个可能的数据源: mainQuery-每日上传歌曲 topTracksOfTheWeek-本周收视率最高的歌曲 topTracksOfTheMonth 最佳跟踪时间 userRatedTracks-用户分级的歌曲 Parse使向查询添加约束以返回所需数据变得容易。但是,我还需要将userR
歌曲
和评级
(用户评级)。当我的应用程序启动时,我目前正在进行5个单独的查询以进行分析,这5个查询构成了我的UITableView的5个可能的数据源:
userRatedTracks
与其他每个查询进行比较,并将userRating
嵌入每个数据源(如果每个曲目都有)。(我在这里学到了如何有效地做到这一点:
我无法确定如何优化或更改此设计以获得更好的性能。上述所有查询都在方法getDataSource
中调用,该方法在viewDidLoad
中调用,然后方法assignDataSource
根据用户选择的数据源设置表的数据源数组(mainQuery
为默认值)。理想情况下,在应用程序启动时,mainQuery
在主线程上获取,填充表,其他查询在后台线程中获取。但是,如果用户选择查看topTracksOfTheWeek
,这将是低效的。当调用getDataSource
并且topTracksOfTheWeek
查询时有优先权
最简单的方法是在我需要的时候懒洋洋地加载每个查询,但我担心与最初加载所有数据相比,这会阻碍应用程序的响应
正如你可能知道的,我是一个初学者。作为一个初学者,我发现设计模式非常令人沮丧,因为我总是认为有一种比我现在做的更好的方法来构造代码。有人对使用多个数据源的设计有什么建议吗?你是否将结果加载到核心数据中?你可以在后台MOC并保存到核心数据。当用户启动时,它会提取本地结果,直到新的解析结果被刷新,并显示一个指示器,以便用户知道数据正在被刷新。查看Ray Wenderlichs教程,这几乎正是执行此操作所需的。甚至使用解析