Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Jetpack Composeで
UI Catalog Libraryを
作っている話 #an...

Jetpack Composeで
UI Catalog Libraryを
作っている話 #android_meetup

Mori Atsushi

August 05, 2021
Tweet

More Decks by Mori Atsushi

Other Decks in Programming

Transcript

  1. • Instrumented Test • Visual Regression Test テスタブルな構成 実⾏環境 差分検知

    結果の通知 運⽤コスト、メンテナンスコスト ⾃動テストでUIデグレに⽴ち向かう ⾃動化まではいくつかのハードルがある
  2. Katalog - 特徴 • 追加しやすいDSL • View / DataBinding /

    ViewBinding / Fragment / Jetpack Composeに対応 • Jetpack Compose製
  3. Katalog - 特徴 • 追加しやすいDSL • View / DataBinding /

    ViewBinding / Fragment / Jetpack Composeに対応 • Jetpack Compose製
  4. Katalog - 特徴 • 追加しやすいDSL • View / DataBinding /

    ViewBinding / Fragment / Jetpack Composeに対応 • Jetpack Compose製
  5. メリット - 複雑なUIの書きやすさ • 画⾯上にアイテムを 2個ちょっと表⽰する カルーセル • LazyRow RecyclerView的なやつ

    • BoxWithConstraints 親の成約を把握し、レイアウトすることができる ここではmaxWidthを取得するために利⽤
  6. アーキテクチャについては検討が必要そう • Jetpack ViewModelとの結合 scope管理がちょっとめんどくさい for Webやfor Desktopと共通では使えない そもそも画⾯回転時等にViewを破棄する必要はないのでは? 今回はentry

    pointでのみ利⽤ • 画⾯遷移の実装 現在のnavigationはstringベースのため、型安全でない for Webやfor DesktopではViewModelと同様に使えない 今回は完全⾃作
  7. 今後の展望 • 検索機能 • さらなる機能の拡充 背景⾊の指定、変更 再起動時にページ位置を復元する • Visual Regression

    Testとの連携 • For Desktop, For Webの提供 Katalog A UI Catalog Library made with Jetpack Compose まもなく公開予定