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
2
580
Jetpack Compose でやってイイこと・ダメなこと
mobile.stmn #2 (2023/10/6)
https://stmn.connpass.com/event/294182/
カーキ
October 06, 2023
Tweet
Share
More Decks by カーキ
See All by カーキ
Composeで敷き詰めるUIを どうやって作るか
takarkiz
0
77
TaskStackBuilderの紹介
takarkiz
0
28
Gemini API でアプリをつくりたい!
takarkiz
0
190
名古屋で勉強会を主催する3つの理由
takarkiz
0
190
GitHub Issue を利用したチケット管理
takarkiz
0
96
Gitの仕組みを理解しよう
takarkiz
0
100
写真と動画の部分的なアクセス権について
takarkiz
0
240
もっとJetpackComposeと仲良くなる
takarkiz
0
310
プログラミングを学ぶこと・教えること
takarkiz
0
79
Other Decks in Technology
See All in Technology
AI 코딩 에이전트 더 똑똑하게 쓰기
nacyot
0
540
Winning at PHP in Production in 2025
beberlei
1
280
MCPが変えるAIとの協働
knishioka
1
150
Dataverseの検索列について
miyakemito
1
190
AIと共同執筆してより質の高い記事を書こう
riyaamemiya
1
270
CARTA HOLDINGS エンジニア向け 採用ピッチ資料 / CARTA-GUIDE-for-Engineers
carta_engineering
0
27k
CodeRabbitと過ごした1ヶ月 ─ AIコードレビュー導入で実感したチーム開発の進化
mitohato14
1
240
20 Years of Domain-Driven Design: What I’ve Learned About DDD
ewolff
1
290
GraphQLを活用したリアーキテクチャに対応するSLI/Oの再設計
coconala_engineer
0
210
非root化Androidスマホでも動く仮想マシンアプリを試してみた
arkw
0
120
DynamoDB のデータを QuickSight で可視化する際につまづいたこと/stumbling-blocks-when-visualising-dynamodb-with-quicksight
emiki
0
140
AIとSREで「今」できること
honmarkhunt
3
720
Featured
See All Featured
Optimizing for Happiness
mojombo
378
70k
GraphQLの誤解/rethinking-graphql
sonatard
71
10k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.3k
Automating Front-end Workflow
addyosmani
1370
200k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Building a Modern Day E-commerce SEO Strategy
aleyda
40
7.2k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
179
53k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
420
YesSQL, Process and Tooling at Scale
rocio
172
14k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Fireside Chat
paigeccino
37
3.4k
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