SKILL

compose-multiplatform-patterns

KMPプロジェクト向けのCompose MultiplatformおよびJetpack Composeパターン — 状態管理、ナビゲーション、テーマ設定、パフォーマンス、プラットフォーム固有のUI。

原文 · 译文未通过检查

适用对象:对象待分类。自动收录 · 待核查。

原作者说明节选

从固定版本的 SKILL.md 提取,保留原文语言。以下内容属于作者说明,本站尚未验证安装、兼容或运行结果。

查看日文原文

原文涵盖的主题

  • Compose Multiplatformパターン
  • 起動条件
  • 状態管理
  • ViewModel + 単一状態オブジェクト
  • Composeでの状態収集
  • イベントシンクパターン
  • ナビゲーション
  • 型安全なナビゲーション(Compose Navigation 2.8+)

Compose MultiplatformとJetpack Composeを使用して、Android、iOS、デスクトップ、Web間で共有UIを構築するためのパターン。状態管理、ナビゲーション、テーマ設定、パフォーマンスをカバーします。 Compose UIの構築(Jetpack ComposeまたはCompose Multiplatform) ViewModelとCompose状態によるUI状態の管理 KMPまたはAndroidプロジェクトでのナビゲーション実装 再利用可能なコンポーザブルとデザインシステムの設計 リコンポジションとレンダリングパフォーマンスの最適化 画面状態には単一のデータクラスを使用します。StateFlowとして公開し、Composeで収集します: 複雑な画面では、複数のコールバックラムダの代わりにイベント用のシールドインターフェースを使用します: ルートを@Serializableオブジェクトとして定義します: 命令型のshow/hideの代わりにdialog()とオーバーレイパターンを使用します: 柔軟性のためにスロットパラメータを持つコンポーザブルを設計します: Modifierの順序は重要です — 以下の順序で適用します: すべてのプロパティが安定している場合、クラスを@Stableまたは@Immutableでマークします: ライフサイクルに対してより安全なcollectAsStateWithLifecycleを使用したMutableStateFlowがある場合にViewModelでmutableStateOfを使用すること コンポーザブルの深い階層にNavControllerを渡すこと — 代わりにラムダコールバックを渡す @Composable関数内の重い計算 — ViewModelかremember {}に移動する 一部の設定では設定変更のたびに再実行されるため、ViewModel initの代替としてLaunchedEffect(Unit)を使用すること コンポーザブルのパラメータに新しいオブジェクトインスタンスを作成すること — 不必要なリコンポジションを引き起こす スキル: モジュール構造とレイヤーについてはandroid-clean-architectureを参照。 スキル: コルーチンとFlowパターンについてはkotlin-coroutines-flowsを参照。

来源仓库
affaan-m/ECC
源文件
docs/ja-JP/skills/compose-multiplatform-patterns/SKILL.md
固定版本
d2ef2680594f9a17526a6e1a2e18b3d242c5d17b
阅读完整原作者说明 ↗

准备条件

  • 本条仅收录原作者的技能元数据;请阅读完整说明,确认依赖、许可与使用条件。

第一件可以尝试的小事

先阅读原作者说明,再决定是否在自己的 AI 工具中使用。

对应 AI 工具说明

作者有说明不等于本站实机验证。没有证据时,不自动标为兼容、安全或免费。

来源与内容状态

本条为自动发现的元数据,尚未完成人工文档核查;适用性与运行结果待核查。

原作者:affaan-m/ECC · 原作者仓库元数据。文档核查:未核查。最近来源检查:2026-11-09T14:01:49.032Z。

分类由名称、说明与路径规则生成,分类不代表已核实适配。

许可与权利归属

MIT。第三方内容及版权归原作者,使用条件以原文为准。

许可原文 ↗

本站没有因同步、复制或用户自报成功而将资源标为运行验证通过。

限制与注意事项

  • 元数据收录不代表本站已经安装、适配、实测或进行安全审查。