我正在为我的iOS应用程序构建后端和前端代码。前端代码将为iPhone和iPad构建。但后端代码将是相同的。我的几个开发人员正在开发后端,一些开发人员在前端。后端,应用程序使用CoreData。我正在考虑将后端代码创建为静态库,并将其链接到前端代码中。但这似乎太复杂了。有没有其他机制,例如,Backend项目说P1构建为Empty应用程序,前端构建为P2。并以某种方式确保P1不能使用P2中的任何类/文件/代码(意味着P1不依赖于P2),但P2可以使用P1中的类/ API等。我想强制P1不会(无意中)使用任何P2代码来清除依赖关系。 有什么建议吗?
答案 0 :(得分:2)
我认为静态库是一个很好的解决方案。就像你可以创建一个帮助类来从核心数据数据库中获取数据。例如:
+ (NSArray *)fetchAllUsers;
+ (User *)fetchUserByName:(NSString *)name;
前端开发人员只知道你可以调用这些方法。后端开发人员负责该方法的工作。
如果您需要实例化,请考虑singelton类。
编辑:(静态核心数据类的示例)
+ (void)insertNewUserWithName:(NSString *)name
{
NSManagedObjectContext *context = [self managedObjectContext];
User *user = [NSEntityDescription insertNewObjectForEntityForName:@"Users"
inManagedObjectContext:context];
[user setName:name];
NSError *error;
if (![context save:&error])
{
NSLog(@"Whoops, couldn't save: %@", [error localizedDescription]);
}
}