我正在编写一个客户端/服务器 Cocoa 应用程序。应用程序服务器没有 UI。为了简化这个问题,请考虑通过 CFNetwork 流(不是 Web 应用程序)移动数据。每个 iOS 客户端都可以请求 OSX 应用服务器执行的任务,例如:
- 获取并返回一条记录或一组记录
- 创建记录
- 更新记录
我看到了 UI 示例,其中 NSManagedObjectContext 数据由 NSObjectController/NSArrayController 管理并绑定到视图。
我不会在服务器上拥有视图,并且我知道我不应该将此功能移动到 AppDelegate 中。
我应该使用什么方法?例如,我是否应该创建每个类都响应一组相关的客户端请求,其中每个类都拥有与其工作单元相关的 NSManagedObjectContext?原谅我的伪代码:
@interface AccountManagement : NSObject
NSManagedObjectContext *contextAccounts;
-(void)fetchAccounts;
-(void)createAccount;
-(void)updateAccount;
@end
@interface SiteManagement : NSObject
NSManagedObjectContext *contextAccounts;
-(void)fetchSite;
-(void)createSite;
-(void)updateSite;
@end
我也在努力了解 NSArrayController 是如何适应这种结构的,也许我不需要一个,因为没有 UI?