したがって、これはアプリケーション設計の問題です。しかし、それはただ議論するだけでなく、「答える」ことができると思います。:)
構築中のアプリケーションにRestKitを使用しています。明らかに、ストレートオブジェクトまたはコアデータオブジェクトに何かを入れるのが非常に簡単になります。
私が扱っている特定の例では、Facebook の投稿に対するコメントと同じように、コメントがあります。
これらのコメントをコア データに保存することの最も良い点は、NSFRC を使用すると、コメントを非常に簡単に並べ替えて、タイムラインの適切な場所に自動的に更新/挿入できることです。しかし、そこにもいくつかの難点があります。
たとえば、無限読み込みでは、新しい最新のコメントと古い保存されたコメントの間でコメントの読み込みを管理する必要があります。(おそらく初めて 25 を取得しましたが、それ以来 100 の新しいコメントがありました。そのため、最初に最新の 25 を取得し、それらに遭遇するまで、新しいコメントと古いコメントの間に自動ロード セルを配置する必要があります。後でページネーションする必要があります。
それとは別に、潜在的に何千ものコメントをコアデータに保存しています。長い間大したことではないかもしれませんが、最終的には GCD タスクで古いコメントのクリーンアップを開始したいと思うかもしれません。
では、何をコア データに保存し、何を一時オブジェクトとして保持するかについて、主な考えは何ですか。(おそらく、NSCache や新しい Tumblr キャッシュhttps://github.com/tumblr/TMCacheなどのキャッシュにそれらを保存します)。
編集
ここで少し明確にする必要があるかもしれません。Core Data の目的を理解しました...アプリの再起動後も保持し、関係を持つオブジェクト グラフを作成します。たっぷり使っています。ここで私が疑問に思っているのは、ネットワーク呼び出しとオフラインでの可用性を常に待つ必要がないために、物事を持続させたい灰色の領域だと思います.
しかし、Facebook のストーリーやコメントと同じように、新しいストーリーが絶え間なく入ってくるので、古い投稿に 300 件のコメントがあったとしても、必ずしも気にする必要はありません。誰かが自分の「投稿」のコメントを何度も見に戻ってくる可能性があります。または、「投稿」とコメントを何気なくブラウジングしているだけで二度と戻ってこない人もいます。
そのため、サービスから多くのエンティティ (コメント) が送られる可能性がある、このようなものの戦略を検討しようとしています。人々はそれらを何度も見たいと思うことがあります(自分の「投稿」)。他の人がこれをどのように行っているかを確認しようとすると、コアデータにすべてを詰め込むものもあれば、(Facebook のように) 最新の 25-50 をデータベースに保存するものもあり、それを超えるものは一時的なものです (おそらく古いストーリーを消去しています)コメントも定期的に。)