我正在开发一个获取数据并将数据推送到 Web 服务的应用程序,我想知道如何正确操作
我的应用程序允许用户创建一个“组”并将他/她的朋友添加到该组中,每个人都将参与该组
我最初的设计让我有了这些数据模型
组、成员、贡献
我正在考虑使用带有 JSON 的 java web 后端在发送之前序列化数据。
现在这是我的问题:
1-将我的模型本地存储在客户端的最佳方法是什么?是核心数据吗?
2-我不想每次用户尝试查看它们时都获取组和贡献数据,所以我正在考虑向名为 groupSerial 的组添加一个属性,该属性将随着每次更改而增加,这样客户端应用程序将查询服务器的序列号并获取组,如果它与其本地版本不同这是一个好主意和最好的方法吗?如果不是,那是什么?
3-我想使用 HTTPS 请求获取数据(GET 用于获取,POST 用于更新),这是最好的方法吗?有什么要考虑的最佳实践吗?
4-对核心数据实体类进行子类化并添加实用方法来完成涉及超类的相关工作是否是个好主意
例如,我将有一个名为 Group 的核心数据实体类,因此我将创建一个名为 XYZGroup 的子类,该子类将具有以下类方法
+(Group)fetchGroup:(NSString gid); // return the latest version of the group ,whether from local storage or the web server
+(void)newGroup:(Group)group; //push the new group to the web server and update local data
+(NSArray)getGroupsSummaries;//Return an array of meta data about joined groups
另外,我会有一个名为 XYZMember 的类,它有一些方法,如:
+(NSString)myMemberID;
+(NSArray)getMembers:(NSArray)numbersInContacts;//Takes a list of phone numbers and returns an array of members that have the app installed
5-我是否需要额外的实体类来在本地存储数据,例如:我是否需要一个名为 Mygroups 的核心数据实体类,其中包含用户当前所在的组的数组
非常感谢