チャット画面のメッセージ履歴やタイムライン画面など
リアルタイムに更新されるデータ、いわゆるフィードを扱う場合
アプリ・サーバー間でのデータ同期処理で悩むことはありませんか?
新規取得したデータと取得済みデータのマージ処理やページング管理、さらにパフォーマンスとの兼ね合いなど
様々な状態を考慮しているうち徐々にアプリ側の状態管理は複雑してしまいます。
またその複雑性は、サーバー側でのAPI設計にも大きく依存しています。
そこで最近注目されているのがFirebaseのCloud Firestoreです。
クライアント側は数行の実装をするだけでデータを同期でき、
通信が不安定なところでも整合性を保ちながら数十ミリ秒以内にデータの更新が届きます。
本トークでは、私が実際に経験したアプリ内メッセージ一覧画面のフィードを例に
ページング実装によって起きる問題を紹介しつつ、
それらがCloud Firestoreでどう解決するのかを導入時注意点と併せて紹介します。
リアルタイムに変化するリストデータを扱う方や
これからアプリ内でこうしたデータを扱う機能を作る予定の方には
設計・実装の参考となる知識をお届けいたします。