CoreDataを窓から投げ捨てるための手順

手順1
・メモリに気をつける。
特に、CoreDataにごっそりデータを入れる、あるいはごっそり取り出すって時はManagedObjectが大量に作られるので途中でちょこちょことManagedObjectContextをリセットして不要なManagedObjectを開放してやる。
ManagedObjectはCoreDataによって管理されてるのでこちらで勝手に開放できない。非常にもどかしい。

手順2
・CoreDataで凝ったことをしてはいけない。
なんかManagedObject間でリンクを張れたりする機能があってとても魅力的なんだけど、使ってはいけない。足元は単なるSQLiteであることを忘れてはいけない。
凝ったことをやると性能ががくんと落ちる。単にObjectを削除するだけで信じられない時間がかかるようになる。とてもじゃないけどアプリのデータを蓄えるメインのストレージとして使えない。

手順3
窓から投げ捨てる。iCloud?知らんがな

手順4
という訳でCloudKit期待してます