managedObjectContext は何処へ・・・
Xcode 8 辺りから CoreData の扱いが変わり、model を更新しても自動で改訂がかかるため .h をわざわざいじらなくてもよい、便利だねってのは分かっていたのだが、プログラム側にも変更があったのは知らなかった。
具体的には、managedObjectContext は何処行った?Project を新規生成するときに Use CoreData にチェックを入れると AppDelegate.h に定義が自動で書かれているはずなんだけど、以下の宣言が無くなっている。
@property (readonly, strong, nonatomic) NSManagedObjectContext *managedObjectContext;
@property (readonly, strong, nonatomic) NSManagedObjectModel *managedObjectModel;
@property (readonly, strong, nonatomic) NSPersistentStoreCoordinator *persistentStoreCoordinator;
書いてあるのはこれだけ。
@property (readonly, strong) NSPersistentContainer *persistentContainer;
さみしいね・・・
調べてみたら、persistentConteiner.viewContext に置き換わるようです。
コンテナに集約したということでしょうか。便利だから歓迎だけど、ちょっとビックリしたね。