Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Jetpack Compose でやってイイこと・ダメなこと
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
カーキ
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
33
俺のフィットネスアプリ @俺の勉強会#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
GoにおけるFFIのこれまでとこれから
goccy
5
2.1k
深夜のクラウド懺悔室 1:29:300 or 1:0:0
kazzpapa3
1
230
AIで実装は速くなった。なのにプロダクトは速くならない。職能の壁を越えて価値のフローを設計する
nwiizo
8
7.7k
The Agent Builder Loop from Daily Work to OSS
minorun365
PRO
3
120
Multica × 長期記憶:40個のミニプロジェクト管理
eiei114
1
230
アリアドネの糸と、20年ごとの建て替え ── 長尾真『電子図書館』を、伊勢で読み直す / Rereading Makoto Nagao’s "Electronic Library" in Ise
ykiyota
0
140
10分で知る最近のOmarchy
komagata
0
240
生成AIのテナント制御とシャドーMCP対策 | AIを"止めずに"、情報を守る
yukun
0
140
「図書館」という名前のままでいいのか -Code4Lib JAPANカンファレンス2026 アンカンファレンス報告- / Code4Lib JAPAN Conference 2026: Unconference Report
ykiyota
0
150
Claude Code本って、 読む必要あるの?
oikon48
2
380
作り直せるコードは迅速に 作り直せないDBは慎重に - AI時代のプロダクトエンジニアが「判断の不可逆性」で開発速度を変える話
kinosuke01
0
300
From Vanilla Kubernetes to a Batteries-Included Platform: Developer Experience at 1,300+ Clusters
yosshi_
0
680
Featured
See All Featured
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2.1k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
370
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
490
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
430
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
420
Done Done
chrislema
186
16k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
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