見出し画像

[Android] Compose の副作用を理解したい[その2]

副作用(Side-Effect)と作用(Effect)

Compose の副作用を勉強していると、「作用」という言葉も出てきて混乱しているので整理してみます。

副作用(Side-Effect)とは、コンポーザブル可能な関数の範囲外で発生するアプリの状態の変化のこと。作用(Effect)とは、UI を出力せずにコンポジション完了時の実行を引き起こすコンポーズ可能な関数のこと。

つまり、「副作用」を予測可能な方法で実行するための関数が「作用」といえるかと思います。公式ドキュメントにも以下の記載がありました。

アプリの状態を変更する必要がある場合は(状態の管理に関するドキュメントを参照)、作用 API を使用して、副作用が予測可能な方法で実行されるようにする必要があります。

Android Developers

もし理解が誤っていそうであれば教えていただけると嬉しいです...。

参考

「Compose における副作用」, https://developer.android.com/develop/ui/compose/side-effects?hl=ja

この記事が気に入ったらサポートをしてみませんか?