これはかなり典型的なシナリオですが、最善のアプローチが何であるかを知りたいです。
REST API と対話するアプリを構築する必要があるとしましょう。Web サーバーからのデータは、アプリ全体で複数の方法で表示されます。
通常、これを処理する方法は、すべてのデータ操作をシングルトンで処理することです (サーバーからのフェッチ/サーバーへの格納と、データのメモリへの保持の両方)。次に、たとえば、このデータをテーブルビューに表示したい場合は、アクセスします。このシングルトンは、データ ソース メソッドで直接使用できます。
したがって、基本的にアプリの一部がデータにアクセスする必要がある場合は、必ずシングルトンにアクセスしてアクセスします。
これはこれを行う良い方法ですか?もっと便利なパターンは他にありますか?
別の方法として、シングルトンにデータを保存する代わりに、各コントローラーにインスタンス変数を保持させて必要なデータを保存させ、シングルトンを使用してサーバーからフェッチするだけで、データ自体を保存することもできます。ここでの問題は、コントローラーが時期尚早に破棄されると、このインスタンス変数が消え、サーバー アクセスが無駄になることです (しかし、これは良いことでしょうか?)。
最後に、永続性をミックスに投入する場合の優れた戦略は何ですか? ネットワーク呼び出しとアプリの残りの部分の間に CoreData を配置するのが良い方法だと思いますか?
ここでの本当の質問は、サーバーから取得され、おそらく永続化されるべきデータを管理するための最良のアプローチは何ですか?