余談ですが、これはよくある誤解ですが、CoreDataはデータベースシステムではありません。
代わりに、必要に応じてオプションとして永続的に追加されたランタイムオブジェクトグラフ管理システムです。主な機能は、Model-View-Controllerデザインパターンのモデルレイヤーを提供することです。そのため、ディスクにデータを出し入れするだけではありません。
Core Dataには学習曲線がありますが、私の経験では、多くの人が直面する最大の障害は、CoreDataをSQLのオブジェクト指向ラッパーとして扱うことです。その観点から、Core Dataは、永続性とは関係のない多くのことを学ぶ必要があるように思われるため、非常に混乱しています。
SQLite、MongoDB、CouchDBなどのデータベースを永続性に使用しても、実際にはまったく速度が上がりません。ディスクのデータの取得方法とディスクからのデータの取得方法を理解しているかもしれませんが、データと関係の管理にはまったく役立たないためです。他のデータオブジェクトとUIのオブジェクトに。それでもデータモデルが必要であり、それらすべてを手作業でコーディングする必要があります。データモデルが非常に単純でない限り、コアデータを学習するよりも時間がかかります。
Core Dataを学習する最良の方法は、オブジェクトグラフを永続化できるという事実を無視することです。アプリのデータモデルを表すオブジェクトがたくさんあり、それらの属性と関係を管理する必要があるという観点から始めてください。