一般社団法人 全国個人事業主支援協会

COLUMN コラム

Compose の思想を読んで、理解が難しかったためブログにまとめる

https://developer.android.com/jetpack/compose/mental-model?hl=ja

翻訳の問題か冪等とか普段使わない言葉や、言い回しがわかりづらい

とりあえず要点をまとめてみた


■Jetpack Composeとは
Android向けの最新の宣言型 UI ツールキット
■なぜJetPack Composeを使うのか
従来のやり方ではデータの更新を複数のビューで表示していると、更新を忘れがち。
更新の競合が起きるなど、メンテナンスが複雑化してしまう。
コンポーズをつかうことで宣言型 UI モデルによりインターフェースとデータの結びつきが簡素化されてメンテナンスが容易になる。
また画面の描画は再コンポーズによりコストが低くなるようになっている。
■再コンポーズについて
再コンポーズは状態変化により再描画される仕組み。
しかし全体が再描画するとコストがかかるため関連しない関数、ラムダはスキップされる。
副作用には注意が必要。(バグにつながる)
副作用
  • 共有オブジェクトのプロパティへの書き込み
  • ViewModel で監視可能なデータの更新
  • 共有設定の更新
■コンポーズについてしっておくこと
  • コンポーズ可能な関数は任意の順序で実行できる。
    • 上から実行されるわけではない
  • コンポーズ可能な関数は並行して実行できる。
  • 再コンポーズは、可能な限り多くのコンポーズ可能な関数とラムダをスキップする。
  • 再コンポーズは厳密なものではなく、キャンセルされる場合がある。
  • コンポーズ可能な関数は、アニメーションのフレームごとに何度も実行される場合がある。
    • 不用に何度も呼び出されないように!

この記事をシェアする

  • Twitterでシェア
  • Facebookでシェア
  • LINEでシェア