Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Jetpack Compose でやってイイこと・ダメなこと
Search
カーキ
October 06, 2023
Technology
640
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Jetpack Compose でやってイイこと・ダメなこと
mobile.stmn #2 (2023/10/6)
https://stmn.connpass.com/event/294182/
カーキ
October 06, 2023
More Decks by カーキ
See All by カーキ
Gemini Nanoを使ってみよう
takarkiz
0
32
俺のフィットネスアプリ @俺の勉強会#5
takarkiz
0
1k
好きから始まるローカルキャリア
takarkiz
0
35
Composeで敷き詰めるUIを どうやって作るか
takarkiz
0
130
TaskStackBuilderの紹介
takarkiz
0
55
Gemini API でアプリをつくりたい!
takarkiz
0
250
名古屋で勉強会を主催する3つの理由
takarkiz
0
240
GitHub Issue を利用したチケット管理
takarkiz
0
150
Gitの仕組みを理解しよう
takarkiz
0
150
Other Decks in Technology
See All in Technology
プロダクト思考 × 基盤思考を AIで実現する Compound Engineering
tkc66buzz
1
270
AIで実装は速くなった。なのにプロダクトは速くならない。職能の壁を越えて価値のフローを設計する
nwiizo
6
7.2k
Hub & Spoke 環境のネットワークルーティングを分解してみる
tsuyataku
1
530
【視聴者参加型!】AWSセキュリティアンチパターンクイズ
syoshie
0
430
AIで開発は速くなったのに、なぜ現場は楽にならないのか 〜あなたの組織のボトルネックを突き止めるワークショップ〜
jacopen
1
270
Sigmaユーザーのための有用リソース一挙公開 & Sigmaで使えるMCP #sigma_ucj /useful-resources-for-sigma-computing-users-and-mcps-with-sigma
shinyaa31
0
120
AIで仕事のやり方を変える
matsu7874
1
830
Azure App Service / Container Apps の組み込み認証
kuniteru
0
200
#jawssonic2026 あの時代が悪かった ~動かなかったSageMakerと共に迎えたイベント当日~
ktkn1129
0
130
データエンジニアリングワークショップ:Auto LoaderとSparkで学ぶデータパイプライン構築
databricksjapan
PRO
0
180
DGX Sparkを2台使って いろいろ動かす話
sonoda_mj
1
130
AIエージェントの開発・提供におけるセキュリティリスクの論点と対策
flatt_security
1
580
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Done Done
chrislema
186
16k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
67k
Designing for humans not robots
tammielis
254
26k
The browser strikes back
jonoalderson
0
1.6k
My Coaching Mixtape
mlcsv
0
310
Un-Boring Meetings
codingconduct
0
410
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
560
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
360
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
Leo the Paperboy
mayatellez
8
2.2k
Transcript
+FUQBDL$PNQPTFͰͬͯ ΧʔΩ!NPCJMFTUNOʢʣ μϝͳ͜ͱ🙅 ΠΠ͜ͱ🙆
ϓϩϑΟʔϧ Name = “ΧʔΩ” BelongTo = “גࣜձࣾελϝϯ/ϞόΠϧΞϓϦG” Work = “Android
App Engineer” Twitter = “@khaki_ngy” Fav = listOf(“🎞”, “🍳”) / / TODO:ӡӦΛ͍ͯ͠ΔίϛϡχςΟͷΠϕϯτͷհΛ͢Δ Organization = “Liven up NAGOYA”
ࠓ͢͜ͱ 1 . Jetpack Compose Recomposition 2 . 3 .
4 .
+FUQBDL$PNQPTFૉΒ͍͠👏
+FUQBDL$PNQPTFͷྑ͍ͱ͜Ζ❤ UI AndroidView AndroidView Composable Google
+FUQBDL$PNQPTFͷؾʹͳΔͱ͜Ζ👀 Recomposition AndroidView UI Recomposition • ඳըࡁΈͷը໘͕࠶ඳը͞ΕΔ͜ͱ • ࠶ඳըࣗମʹͳ͍ •
ҙਤ͠ͳ͍λΠϛϯάͰRecomposition͕ൃੜͯ͠͠·͏ͱύϑΥʔϚϯεͷԼʹܨ͕Δ
ҙਤ͠ͳ͍ 3FDPNQPTJUJPOΛ͑Δϧʔϧ ࠓ͢͜ͱ
ܕͷ҆ఆੑฤ
ܕͷ҆ఆੑʹ͍ͭͯ ܕͷʮ҆ఆʯʮෆ҆ఆʯ Composable Recomposition Ҿʹ༩͑Δܕ͕҆ఆͳͷ͔ෆ҆ఆͳͷ͔ΛΔඞཁ͕͋Δ
🙆ͬͯΠΠ͜ͱ $PNQPTBCMFؔͷύϥϝʔλʹϓ ϦϛςΟϒܕΛ͏
🙆ΠΠͶ $PNQPTBCMFؔͷύϥϝʔλʹϓϦϛςΟϒܕΛ͏ Recomposition 👍
🙅ͬͯμϝͳ͜ͱ $PNQPTBCMFؔͷύϥϝʔλʹί ϨΫγϣϯܕ -JTU 4FU Λ͏
🙅ؾΛ͚ͭͯ $PNQPTBCMFؔͷύϥϝʔλʹίϨΫγϣϯܕ -JTU 4FU Λ͏ items Recomposition
🙆ͬͯΠΠ͜ͱ *NNVUBCMF-JTUΛར༻͢Δ
🙆ΠΠͶ *NNVUBCMF-JTUΛར༻͢Δ kotlinx.collections.immutable Immutable Collection ImmutableList/ImmutableSet/ImmutableMap
🙅ͬͯμϝͳ͜ͱ ҾʹඇσʔλΫϥεΛར༻͢Δ
🙅ؾΛ͚ͭͯ ҾʹඇσʔλΫϥεΛར༻͢Δ Recomposition
🙆ͬͯΠΠ͜ͱ ίϨΫγϣϯܕΛϥοϓͨ͠Ϋϥεʹ !*NNVUBCMFΞϊςʔγϣϯΛ͚Δ
🙆ΠΠͶ ίϨΫγϣϯܕΛϥοϓͨ͠Ϋϥεʹ!*NNVUBCMFΞϊςʔγϣϯΛ͚Δ Collection @Immutable Items
🙆ͬͯΠΠ͜ͱ ఆͷΈͰߏ͞ΕͨσʔλΫϥε Λར༻͢Δ
🙆ΠΠͶ ఆͷΈͰߏ͞ΕͨσʔλΫϥεΛར༻͢Δ @Immutable
Πϯελϯεੜ
Πϯελϯεੜͷίετ $PNQPTBCMFؔͰͷҙ Composable Composable
🙅ͬͯμϝͳ͜ͱ $PNQPTBCMFؔͷείʔϓͰΠϯ ελϯεΛੜ͢Δ
🙅ؾΛ͚ͭͯ $PNQPTBCMFؔͷείʔϓͰΠϯελϯεΛੜ͢Δ Widget Recomposition Title Title() Composable Recomposition
🙆ͬͯΠΠ͜ͱ ΠϯελϯεੜʹSFNFNCFSΛ ར༻͢Δ
🙆ΠΠͶ ΠϯελϯεੜʹSFNFNCFSΛར༻͢Δ Remember Composition
🙆ͬͯΠΠ͜ͱ SFNFNCFSͷΩʔΛར༻͢Δ
🙆ΠΠͶ SFNFNCFSͷΩʔΛར༻͢Δ remember key
🤷͜ΕͲ͏ʁ SFNFNCFSͷΩʔΛར༻͢Δ Remember Recomposition
🙆ͬͯΠΠ͜ͱ EFSJWFE4UBUF0GΛར༻͢Δ
🙆ΠΠͶ EFSJWFE4UBUF0GΛར༻͢Δ derivedStateOf textColor Recomposition
🤷ཹҙ 3FDPNQPTJUJPOʹහײʹͳΓա͗ͳ͍ Recomposition
3FDPNQPTJUJPOΛݟۃΊΔ🕵
3FDPNQPTJUJPOΛݟۃΊΔํ๏ 1 . Layout Inspector Recomposition 2 . recomposeHighlighter
-BZPVU*OTQFDUPS 3FDPNQPTJUJPOͷݸΛදࣔͰ͖Δʂ
-BZPVU*OTQFDUPSͰ֬ೝ͢Δ্Ͱͷҙ Gira ff e minify false Show Recomposition Counts
SFDPNQPTF)JHIMJHIUFSΛ͏ Google Github Modi fi er Composable Modi fi er
Recomposition
·ͱΊ
ࠓͷ·ͱΊ Jetpack Compose Recomposition Recomposition 領 Recomposition