問題タブ [android-mvvm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
3814 参照

android-room - Android アーキテクチャ コンポーネント (MVVM) - リポジトリ パターンを使用してリモート データとローカル データを処理する理想的な方法

新しいアーキテクチャ コンポーネントで使用できるサンプル コードを多数参照しましたが、プロジェクトのセットアップでまだいくつかの問題に直面しています。

リモート サービスからデータを取得し、部屋のデータベースに保存する必要があります。ビューで 1 つのライブ データ リストだけを監視したい。私の AppRepository は、RemoteRepository と LocalRepository を処理します。リモート リポジトリには、Web サービスからムービーのリストを受け取るメソッド fetchMovies() があります。このリストを部屋のデータベースに保存したいのですが、現在、私の RemoteRepository クラスがこれを行っています。

私の理解では、理想的には、リモート リポジトリとローカル リポジトリは独立している必要があり、この作業は AppRepository クラスによって実行される必要があります。これを行う 1 つの方法は、コールバックを使用することですが、ライブデータを使用してこれを行いたいと考えています。fetchMovieFromRemote(int page) メソッドはそのためのライブデータを返す必要がありますが、その場合、現在部屋から返される映画のリストのライブデータを持っているビューモデルでそれを処理する方法。

私はMVVMを初めて使用します。このアーキテクチャの理想的なアプローチについて教えてください。