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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
HiroYUKI Seto
May 17, 2019
Programming
880
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Jetpack Compose
19/05/17
Shibuya.apk #34 - Report from Google I/O 2019
HiroYUKI Seto
May 17, 2019
More Decks by HiroYUKI Seto
See All by HiroYUKI Seto
Androidアプリの 安全なリファクタリングを行うパターン集
seto_hi
2
5k
UI TestやVisual Regression Testを コスパ良くやる
seto_hi
3
1.9k
事業支援というお仕事
seto_hi
0
460
MDCの内部実装から学ぶ 表現力の高いViewの作り方
seto_hi
5
1.9k
CoordinatorLayoutのBehaviorを使い倒す
seto_hi
1
460
UI改善に繋がるエンジニアの立ち回り
seto_hi
2
4.8k
MDCのButtonのCorner Family
seto_hi
1
260
MDCのBottomAppBarのShadowの実現方法
seto_hi
0
1.1k
Kyashは なぜ使いやすいのか
seto_hi
1
2.6k
Other Decks in Programming
See All in Programming
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
250
スマートグラスで並列バイブコーディング
hyshu
0
120
Dataformのリポジトリを立ち上げるときにまずやること / dataform-day0-2026
snhryt
0
140
Old Dog, New Tricks: The Java 25 Reinvention - JNation
bazlur_rahman
0
150
AI時代のUIはどこへ行く?その2!
yusukebe
20
7k
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
1.9k
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
230
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
4.9k
AI駆動開発で崩れていくコードベースを立て直す
kyoko_nr_nr
1
450
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
150
さぁV100、メモリをお食べ・・・
nilpe
0
130
Agentic UI
manfredsteyer
PRO
0
130
Featured
See All Featured
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
610
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
71
40k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
580
Building a Scalable Design System with Sketch
lauravandoore
463
34k
The Curious Case for Waylosing
cassininazir
1
380
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
440
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
840
How to Talk to Developers About Accessibility
jct
2
230
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
450
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Transcript
+FUQBDL$PNQPTF גࣜձࣾϊϋφɹށ༏೭
ށ༏೭!TFUP@IJ גࣜձࣾϊϋφ ΞϓϦΤϯδχΞ
None
*FOKPZFE*0
8IBU`T+FUQBDL$PNQPTF
⚠&YQFSJNFOUBM"1*⚠ OPUSFBEZGPSQSPEVDUJPOVTF
8IBU`T+FUQBDL$PNQPTF w +FUQBDLϥΠϒϥϦͷͻͱͭͱͯ͠ఏڙ͞ΕΔ w એݴత6*ߏங w "OLP'MVUUFSͱࣅͨهड़ w YNMͰͷMBZPVUͷସ w
طଘͷ7JFXͷସ w ޓੑΛ࣋ͨͤΔ͜ͱ͕Ͱ͖Δ
8IZ+FUQBDL$PNQPTF
6OCVOEMFUIF6*5PPMLJU w $IFU)BBTFTBZTl"1*EFTJHOJTCVJMEJOHGVUVSFSFHSFUz w 7JFXKBWBສߦऑ w #VUUPOFYUFOET5FYU7JFX w ճస͠ͳ͍4QJOOFS w
7JFXΛ+FUQBDLԽ͍ͨ͠ w 04ΞοϓσʔτΛͭ͜ͱͳ͘όάΛमਖ਼Ͱ͖Δ
+FUQBDL$PNQPTFݪଇ w ,PUMJOͰ؆ܿʴࣗવʹॻ͚Δ w એݴత w ޓੑ͕͋Δ w ඒ͍͠ΞϓϦΛ࡞ΕΔ w
։ൃΛՃ͢Δ IUUQTEFWFMPQFSBOESPJEDPNKFUQBDLDPNQPTFDPSF@QSJODJQMFT
)PXUPVTF
)PXUPVTF w IUUQTBOESPJEHPPHMFTPVSDFDPNQMBUGPSNGSBNFXPSLT TVQQPSU BOESPJEYNBTUFSEFWVJ3&"%.&NEHFUUJOH TUBSUFE w ϥΠϒϥϦԽ͞Ε͍ͯͳ͍ w BOESPJE9ͷ։ൃڥߏங͕ඞཁ
)PXUPVTF override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent {
Text("hello") } } ˞setContent"DUJWJUZͷ֦ுؔ
)PXUPVTF @Composable fun Greeting(name: String) { Text(name) }
)PXUPVTF @Composable @GenerateView fun Greeting(name: String) { Text(name) }
!(FOFSBUF7JFX w YNMͰఆٛͰ͖Δ • <GreetingView /> w findViewById(R.id.greeting)
)PXUPVTF @Composable fun RallyBody() { Padding(padding = 16.dp) { Column
{ // TODO: scrolling container RallyAlertCard() HeightSpacer(height = 10.dp) RallyAccountsCard() HeightSpacer(height = 10.dp) RallyBillsCard() } } }
·ͱΊ
·ͱΊ w ⚠&YQFSJNFOUBM⚠ w એݴత6*ߏங w طଘͷ7JFXΛஔ͖͑Δͷ w BOOPUBUJPOͰޓੑ͕อͯΔ w
ઈࢍҙݟืूத
ࢀߟϦϯΫ w +FUQBDL$PNQPTF IUUQTEFWFMPQFSBOESPJEDPNKFUQBDLDPNQPTF w +FUQBDL$PNQPTF3&"%.&NE IUUQTBOESPJEHPPHMFTPVSDFDPNQMBUGPSNGSBNFXPSLT TVQQPSU BOESPJEYNBTUFSEFWVJ3&"%.&NE w
%FDMBSBUJWF6*1BUUFSOT (PPHMF*0` IUUQTZPVUVCF7T4UZR-[YP
None