Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
retrofit&flow
sobaya
March 14, 2021
Programming
1
550
retrofit&flow
use flow
sobaya
March 14, 2021
Tweet
Share
More Decks by sobaya
See All by sobaya
JetpackCompose 導入半年で感じた 改善点
spbaya0141
0
110
早い・うまい・Jetpack Compose
spbaya0141
0
300
Koin to Hilt
spbaya0141
1
270
jetpack compose with ksp
spbaya0141
0
160
SharedFlowSaikou
spbaya0141
0
190
Asynxronous Datastreaming with Kotlin Flow
spbaya0141
0
23
Android App Size down
spbaya0141
0
37
Other Decks in Programming
See All in Programming
クックパッドマートの失敗したデータ設計 Before / After 大放出
mokuzon
0
180
Opsしかやってこなかった私が DevOpsが根付いたチームにJoinした話
yhamano
1
100
Haskellでオブジェクト指向プログラミング
koheisakata
0
140
CakePHPの内部実装 から理解するPSR-7
boro1234
0
270
無限スクロールビューライブラリ 二つの設計思想比較
harumak
0
270
Scrum Fest Osaka 2022/5年で200人になったスタートアップの アジャイル開発の歴史とリアル
atamaplus
1
980
Imperative is dead, long live Declarative! | Appdevcon
prof18
0
120
Chart実装が楽になりました。
keisukeyamagishi
0
120
GDG Seoul IO Extended 2022 - Android Compose
taehwandev
0
340
Gitlab CIでMRを自動生成する
forcia_dev_pr
0
120
プロダクトのタイプ別 GraphQL クライアントの選び方
shozawa
0
5.9k
UI Testing of Jetpack Compose Apps, AppDevCon
alexzhukovich
0
180
Featured
See All Featured
Pencils Down: Stop Designing & Start Developing
hursman
112
9.8k
Building an army of robots
kneath
299
40k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
7
1.1k
Fontdeck: Realign not Redesign
paulrobertlloyd
73
4.1k
Designing with Data
zakiwarfel
91
3.9k
A Philosophy of Restraint
colly
192
15k
The Invisible Customer
myddelton
110
11k
jQuery: Nuts, Bolts and Bling
dougneiner
56
6.4k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
10
3.5k
A Tale of Four Properties
chriscoyier
149
21k
Ruby is Unlike a Banana
tanoku
91
9.2k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
315
19k
Transcript
'MPXͰ"QJ࿈ܞͨ͠Β ࣗࣾʹ߈ܸͯͨ͠͠ͱͦͷޙ
w !TPCBZB5XJUUFS w !TPCBZB(JUIVC w TPCZB;FOO ॳΊͯެ։ͨ͠ΞϓϦͷ࠷ऴߋ৽͕ͳͷͰ࠷Ͱ͘Β͍"OESPJEͬͯΔΈ͍ͨͰ͢ɻ ˞݁ࠗલ͔ΒͬͯΔ͔Β֬ఆ ͨͿΜ͍ͬͯΔ
ࡾਓͷஉͷࢠΛҭͯͯΔͷͰ࠷ۙ༨༟͕ແ͍Ͱ͢ɻ ͞΅͍ͬͯͨϦϯάϑΟοτͱϑΟοτϘΫγϯάΛਅ໘ʹͬͨΒମॏݮΓ·ͨ͠ɻ ؤுΓ·͢ɻ
ࠓͷ༰ 3FUSP U ͱ ܨ ͍ Ͱ Έ ͨ ߈
ܸ ͠ ͯ ͨ ߈ ܸ Λ ఀ ࢭ ͠ ͨ ͜ Μ ͳ ײ ͡ ʹ ͯ · ͢
3FUSP fi Uͱܨ͍ͰΈͨ
TVTQFOEGVOʹ͢Δ
fl PXԽ͢Δ "QJݺͼग़͠ͷ݁ՌΛFNJU
௨৴ͳͷͰ*0 ௨৴ΤϥʔͳͲ
wΞΠίϯը૾ͷ63- wχοΫωʔϜ Θͨ͠ w৯ࣄͷςʔϚ μΠΤοτ w৯ࣄج४ wΤωϧΪʔ w৯Ԙ
wλϯύΫ࣭ wࢷ࣭ wਫԽ w৯ણҡ wखಈͰมߋ͞Εͨӫཆૉ
'MPXʹΦϖϨʔλʔ͍ͬͺ͍͋ͬͯศརͩͳ͊ʙ NBQΛ͔ͭͬͯը໘߲ʹղͯ͋͛͠Ε͍͍Μͩͳʂ 'MPXશʹཧղͨ͠ʂʂʂ
ࣗࣾʹ߈ܸͯͨ͠
ΞϓϦͷϨϏϡʔձΛ͢Δͱಛఆͷ"1*ͷෛՙ͕ߴ͘ͳΔؾ͕͢Δɻɻɻ
3FQPTJUPSZ͔Βऔಘͨ͠3FUSP fi Uͱܨ͍ͰΔ'MPXΛNBQ͢ΔͱNBQ͚ͨͩ͠ϦΫΤετ ͛ͯΔ͡ΌΜʂʁ ͜ͷίʔυྫͩͱճϦΫΤετΛ͛·͢
߈ܸΛఀࢭͨ͠
"QJͷݺͼग़݁͠ՌΛ4IBSFE'MPXʹมߋ $SPVUJOF4DPQF ։࢝λΠϛϯά SFQMBZΛࢦఆ͠·͢ɻ ։࢝λΠϛϯά 4IBSJOH4UBSUFE&BHFSMZ͙͢ʹ࣮ߦ 4IBSJOH4UBSUFE-B[JMZ୭͔͕ߪಡΛ։࢝ͨ͠Β࣮ߦ Λબ·͢ɻ 4IBSJOH4UBSUFE8IJMF4VCTDSJCFEলུ
SFQMBZࢦఆͨ͠ճͷաڈσʔλΛߪಡ։࢝ͨ࣌͠ʹ௨ͯ͘͠Ε·͢ɻ ߪಡ։࢝FNJU௨͞ΕΔ FNJUߪಡ։࢝SFQMBZ͕ͩͱ௨͞Εͳ͍ɺͩͱ࠷৽ͷ͕௨ɺͳΒաڈճͷσʔλ͕௨͞ΕΔ
"QJͷݺͼग़݁͠ՌΛ4UBUF'MPXʹมߋͰ͖·͢ɻ $SPVUJOF4DPQF ։࢝λΠϛϯά ॳظΛࢦఆ͠·͢ɻ ։࢝λΠϛϯά 4IBSJOH4UBSUFE&BHFSMZ͙͢ʹ࣮ߦ 4IBSJOH4UBSUFE-B[JMZ୭͔͕ߪಡΛ։࢝ͨ͠Β࣮ߦ Λબ·͢ɻ 4IBSJOH4UBSUFE8IJMF4VCTDSJCFEলུ
4UBUF'MPXʹ͢ΔͱϝΠϯεϨου͔ΒͰ͕औಘՄೳʹͳΔͷͰศརͰ͢ɻ WBMVFͰऔಘՄ
4IBSFE'MPX4UBUF'MPX͕όʔδϣϯͳͲͷͰ͑ͳ͍߹ ݸNBQ ࠓճ3FUSP fi U3FTQPOTFNBQ\JUCPEZ^ ͯ͠ɺͦΕΛNBQ͢Δ͜ͱͰղܾ͠·͢ɻ
͜Μͳײ͡ʹͬͯ·͢
ϥδΦϘλϯͳͲͱ࿈ಈ ը໘ྫ w ͕มߋՄೳ w ேมߋՄೳ w ࢦఆ͞ΕͨͱேΛͬ ͯମॏ݂ѹΛऔಘ͢Δɻ
ϥδΦϘλϯͳͲͱ࿈ಈ 7JFX.PEFM ேͷมߋΛࢹ ே͕มߋ͞ΕͨΒϦΫΤετ ேΛઃఆ
ը໘ͱ࿈ܞ ֦ுؔ ҾͰड͚औͬͨ'MPXΛߪಡ͢Δ.VUBCMF-JWF%BUBΛฦ٫͢Δ֦ுؔͰ͢ɻ
ը໘ͱ࿈ܞ ֦ுؔ ը໘ʹදࣔ͢ΔFEJU͕ମॏ݂ѹͰɺ ํ%BUB#JOEJOHͳͲͰܨ͙͜ͱΛఆ͍ͯ͠·͢ɻ
͓·͚
BT-JWF%BUB ͨ͠-JWF%BUBը໘Ͱ༻ ୭ʹߪಡ ͞Εͳ͍ͱOVMMͷ··Ͱ͢ɻ ىಈ࣌ʹBT-JWF%BUBͨ͠ΛొϘλϯԡԼ࣌ʹ-JWF%BUBWBMVF͍ͨ࣌͠ͳͲҙ͕͍Γ·͢ɻ ۭ࣮ͳͲதͰ0CTFSWFS JU Λࢀর͠ͳ͍Α͏ͳ࡞Γͩͱ ಉҰ0CTFSWFS͕ηοτ͞ΕΫϥογϡ͢Δ͕࣌͋Γ·͢ɻ
4IBSFE'MPXͰྫ֎ཧ ͜ͷΫϥεΛ 3FQPTJUPSZͱ "DUJWJUZʹJOKFDU DBUDIͨ͠ΒFNJU ྫ֎ʹΑͬͯ μΠΞϩάදࣔ ϝϯςφεදࣔ ΫϥογϡͳͲ
·ͱΊ
w7JFX.PEFM4DPQFWJFX-JGFDZDMF4DPQFͳͲߪಡཧΛউखʹͬͯ ͘Εָͯνϯ wNBQ DPNCJOF EFCPVODFͳͲΦϖϨʔλ͕͍ͬͺ͍͋ͬͯศར w4IBSFE'MPXΛ͑&WFOUCVTΈ͍ͨͳࣄՄೳ
wൃද༰;FOOʹಉ༷͡ͳهࣄΛஔ͍ͯ͋Γ·͢ɻ IUUQT[FOOEFWTPCZB wαϯϓϧίʔυ IUUQTHJUIVCDPNTPCBZB"MM'MPXUSFF fl PX
IUUQTHJUIVCDPNTPCBZB fl PX@TBNQMF