我現在正在iPhone上開發一個具有核心數據的應用程序。在閱讀了許多有關核心數據的項目之後,我發現核心數據代碼被嵌入到所有項目的viewController代碼中。例如:核心數據代碼必須嵌入到viewController代碼
@interface MyAppMasterViewController : UITableViewController <NSFetchedResultsControllerDelegate>
@property (strong, nonatomic) MyAppDetailViewController *detailViewController;
@property (strong, nonatomic) NSFetchedResultsController *fetchedResultsController;
@property (strong, nonatomic) NSManagedObjectContext *managedObjectContext;
我想分裂有關的viewController從核心數據的所有代碼,並創建一個特殊的存儲類。更重要的是,提供一些方法來打包核心數據API,例如:
@interface MyAppMasterViewController : UITableViewController
...
...
@interface MyAppStorageClass : NSObject <NSFetchedResultsControllerDelegate>
@property (strong, nonatomic) NSFetchedResultsController *fetchedResultsController;
@property (strong, nonatomic) NSManagedObjectContext *managedObjectContext;
(Note *)createNote;
(BOOL)deleteNote;
我想,如果有一天,我不希望使用核心數據存儲我的項目,我可以用低成本的替換。
以上所有,是嗎?我可以這樣做嗎?