用于代码分离的XCode

时间:2012-04-14 19:20:06

标签: xcode core-data

我正在为我的iOS应用程序构建后端和前端代码。前端代码将为iPhone和iPad构建。但后端代码将是相同的。我的几个开发人员正在开发后端,一些开发人员在前端。后端,应用程序使用CoreData。我正在考虑将后端代码创建为静态库,并将其链接到前端代码中。但这似乎太复杂了。有没有其他机制,例如,Backend项目说P1构建为Empty应用程序,前端构建为P2。并以某种方式确保P1不能使用P2中的任何类/文件/代码(意味着P1不依赖于P2),但P2可以使用P1中的类/ API等。我想强制P1不会(无意中)使用任何P2代码来清除依赖关系。 有什么建议吗?

1 个答案:

答案 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]);
    }
}