私はMVVM
の実装を開始しましたが、ViewModel
内でAdapter
を使用することがグッドプラクティスなのかアンチパターンなのかわかりません。
例として、背景を変更する色と画像のリストを考えてみましょう。その場合、選択したColorを監視し、UIに表示する背景色をバインドします。
しかし、私は2つの場所でcolorSelectedを観察しています:
Fragment
内Adapter
では、選択した色を表示しますそれで、MVVM
をViewModel
に渡して監視するときに、Adapter
を適切に使用していますか?
良いパターンかどうかは今のところわかりませんが、これには1つの問題があります。この方法では、アダプターがViewModelに関連付けられているため、別の画面で他のViewModelと再利用できません。一方で、recyclerViewからのコールバックを追加せずに作業を行う方がはるかに簡単で、実装が簡単になります。コールバックを使用する方が「良い」と思いますが、ViewModelを渡す方が「簡単」です(CGは問題なく処理できるはずです)。