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
既存のAndroidプロジェクトを Jetpack Composeに移行してみる / Migr...
Search
Nabe
February 19, 2021
Programming
990
1
Share
既存のAndroidプロジェクトを Jetpack Composeに移行してみる / Migrate existing Android project to Jetpack Compose
2021/02/19
Mobile Act ONLINE #3
https://mobileact.connpass.com/event/200515/
Nabe
February 19, 2021
More Decks by Nabe
See All by Nabe
カクヨムAndroidアプリのリブート
numeroanddev
0
630
GraphicsLayerのBitmap作成
numeroanddev
0
230
GraphQLとGigaViewer for Apps
numeroanddev
4
4.6k
Android アプリのプロジェクトをモダンにし続ける工夫
numeroanddev
1
770
Material 3で Material 2ぽい見た目にする
numeroanddev
2
660
Google I/O 2023 の 個人的おすすめセッションの紹介 / Introducing interesting sessions at Google IO 2023
numeroanddev
1
490
Jetpack ComposeのTalkback対応/Improve Talkback in Jetpack Compose
numeroanddev
0
590
Baseline Profilesでアプリのパフォーマンスを向上させる / Improve app performance with Baseline Profiles
numeroanddev
0
990
Jetpack Composeでアプリを開発して遭遇した問題
numeroanddev
0
760
Other Decks in Programming
See All in Programming
Agentic Elixir
whatyouhide
0
450
「OSSがあるなら自作するな」は AI時代も正しいか ── Build vs Adopt の新しい判断基準
kumorn5s
7
2.5k
Terraform言語の静的解析 / static analysis of Terraform language
wata727
1
140
JCON - Create Agentic AI Apps, The Easy Way!
kdubois
1
100
HTML-Aware ERB: The Path to Reactive Rendering @ RubyKaigi 2026, Hakodate, Japan
marcoroth
0
680
AI時代になぜ書くのか
mutsumix
0
360
なぜあなたのコードには「コシ」がないのか?〜AI時代に問う、最後まで美味しい設計と戦略〜 #phpconkagawa / phpconkagawa2026
shogogg
0
160
ソースコード→AST→オペコード、の旅を覗いてみる
o0h
PRO
1
130
過去のレビュー知見をSkillsで資産化した話
pkshadeck
PRO
1
1.8k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
590
属人化しないコード品質の作り方_2026.04.07.pdf
muraaano
0
340
書籍「ユーザーストーリーマッピング」が私のバイブル
asumikam
4
490
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Balancing Empowerment & Direction
lara
6
1.1k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
400
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
290
The Invisible Side of Design
smashingmag
302
52k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
320
30 Presentation Tips
portentint
PRO
1
290
Building an army of robots
kneath
306
46k
Claude Code のすすめ
schroneko
67
220k
Building Applications with DynamoDB
mza
96
7k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Transcript
.PCJMF"DU0/-*/& طଘͷ"OESPJEϓϩδΣΫτΛ +FUQBDL$PNQPTFʹҠߦͯ͠ΈΔ
1SPGJMF w ͳ w 5XJUUFS!/BCF$PUU w (JU)VC/6NFSP"OE%FW w גࣜձࣾͯͳ w
"OESPJEJ04BQQMJDBUJPOFOHJOFFS
+FUQBDL$PNQPTFͱ w "OESPJEʹ͓͚Δએݴత6*ͷϑϨʔϜϫʔΫ w "OESPJEҎ߱Ͱ͑Δ w ݱࡏͰBMQIB͕࠷৽ w ʹ4UBCMFʹͳΔ༧ఆ w
IUUQTXXXZPVUVCFDPNXBUDI W6#XGR#QJ86GFBUVSFZPVUVCFU ͜ͷઌɺ+FUQBDL$PNQPTFΛ$PNQPTFͱলུͯ͠දه͠·͢
ࠓ͢͜ͱ w ࣮ࡍʹ͋ΔϓϩδΣΫτΛ+FUQBDL$PNQPTFʹશҠߦͯ͠Έ·͢ w ͲͷΑ͏ͳखॱͰҠߦ͢Δ͜ͱʹͳΔͷ͔ w ҠߦͰେมͩͬͨՕॴ w +FUQBDL$PNQPTFʹඋ͑ͯࠓ͔ΒͰ͖Δ͜ͱ
+FUQBDL$PNQPTFʹҠߦ͢Δखॱ طଘͷ7JFXͱಉ͡σβΠϯͷ$PNQPTBCMFGVOΛ࣮͢Δ w "OESPJE4UVEJPͰ1SFWJFXΛ֬ೝͰ͖Δ "DUJWJUZPS'SBHNFOUͷը໘୯ҐͰ$PNQPTFஔ͖͑Δ w $PNQPTF"DUJWJUZ'SBHNFOU7JFX୯ҐͰͷಋೖ͕Մೳ
ը໘ભҠΛ$PNQPTFͰભҠͤ͞ΔΑ͏ʹ͢Δ
ࠓճҠߦ͢ΔϓϩδΣΫτ w 6IPPJ1JD#PPL"OESPJEͱ͍͏ɹ ϗʔΠ͞Μ !UIF@VIPPJ ͕ (JU)VCʹ044ͱͯ͠ެ։͍ͯ͠ ΔϓϩδΣΫτΛ$PNQPTFʹҠ ߦͯ͠Έ·͢ w
IUUQTHJUIVCDPNVIPPJ 6IPPJ1JD#PPL"OESPJE w ͜ͷΞϓϦҰཡɺৄࡉͱγϯϓ ϧͳߏͷΞϓϦͰ͢
ΞΠςϜΛ࣮
ΞΠςϜΛ࣮
ϦετΛ࣮
ϦετΛ࣮
Ұཡͷը໘Λ࣮
Ұཡͷը໘Λ࣮
σʔλΛҰཡʹө w $PNQPTF͕ѻ͑Δ 0CTFSWBCMFͳܕͱͯ͠4UBUF ͕༻ҙ͞Ε͓ͯΓɺ-JWF%BUBΛ PCTFSWF"T4UBUFͰ$PNQPTF Ͱ؍ଌͰ͖ΔΑ͏ʹ w -JWF%BUBɺ4UBUF'MPXɺ 3Y+BWB4UBUFʹม͢Δ
Έ͕༻ҙ͞Ε͍ͯΔ
'SBHNFOUʹ$PNQPTFΛදࣔ w $PNQPTF7JFXΛ'SBHNFOUͷ7JFX ʹઃఆ͠ɺTFU$POUFOUʹ $PNQPTFΛॻ͚ͩ͘ w .ED5IFNFϓϩδΣΫτͰઃఆ͞ Ε͍ͯΔ5IFNFΛ$PNQPTFͷ 5IFNFʹஔ͖͑ͯ͘ΕΔͷ w
IUUQTHJUIVCDPNNBUFSJBM DPNQPOFOUTNBUFSJBM DPNQPOFOUTBOESPJEDPNQPTF UIFNFBEBQUFS
ଞͷը໘Ҡߦ͢Δ w جຊతʹͲͷը໘Ͱखॱಉ͡Ͱ طଘͷ7JFXͱಉ͡σβΠϯͷ$PNQPTBCMFGVOΛ࣮͢Δ "DUJWJUZPS'SBHNFOUͷը໘୯ҐͰ$PNQPTFஔ͖͑Δ Ͱஔ͖͍͖͑ͯ·͢ w ଞͷը໘ͷஔ͖͑লུ͠·͢
ը໘ભҠΛҠߦ͢Δ w ࠓճ+FUQBDLʹ͋Δ/BWJHBUJPO$PNQPTFΛͬͯભҠॲཧΛ࣮ w IUUQTEFWFMPQFSBOESPJEDPNKFUQBDLDPNQPTFOBWJHBUJPO w /BWJHBUJPO$PNQPTFΛΘͣʹભҠॲཧΛؤு࣮ͬͯ͢Δ͜ͱͰ͖Δ
ը໘ͷάϥϑΛ࣮͢Δ w /BW)PTUͷதͰDPNQPTBCMFΛ༻͠ ͯભҠʹ͏SPVUFͱ$PNQPTBCMFͷ ఆٛΛ࣮͢Δ w /BWJHBUJPOͷ,PUMJO%4-ͷ࣮ͱಉ ͡ w ͜ͷDPNQPTBCMFͰSPVUFʹઃఆ͠
ͨύεͰ%FFQMJOLΛੜͯ͠ભҠΛ࣮ ݱ͍ͯ͠Δ w /BW$POUSPMMFSʹఆٛͯ͋͠ΔSPVUFΛ ͤભҠͰ͖Δ
ભҠઌͷը໘ʹΛ͢ w SPVUFʹ͍ͨ͠Λఆٛ͠ɺ BSHVNFOUTʹܕใΛఆٛ͠·͢ w ड͚औΔ࣌DPNQPTBCMFʹฦͬ ͯ͘Δ/BWCBDL4UBDL&OUSZ͔Β ड͚औΓ·͢ w ભҠ࣌ʹ4FSJBMJ[BCMF
1BSDFMBCMFΛ͢खஈ BMQIB࣌Ͱͳ͍
ը໘ભҠΛҠߦ͢Δ w ϧʔτͷ"DUJWJUZʹ TFU$POUFOUͰ$PNQPTFΛද ࣔ͢ΔΑ͏ʹ͢ΕҠߦྃ
$PNQPTFʹҠߦͯ͠Έͯ w طଘͷ7JFXͱ$PNQPTFʹޓ͕͋Δ͔Βಋೖ͍͢͠ w ࠓճ͍ͯ͠ͳ͍͕$PNQPTFʹ͜Ε·Ͱͷ7JFXΛදࣔͤ͞Δ͜ͱՄೳ w ը໘ભҠͷҠߦ͕ॴͰɺ'SBHNFOU /BWJHBUJPOͱ/BWJHBUJPO$PNQPTF ͷซ༻͕͘͠ɺશͯͷը໘ભҠΛҰʹஔ͖͑ΔͱͳΔͱίετ͕ߴ͍ w
'SBHNFOU /BWJHBUJPOͦͷ··ʹத͚ͩ$PNQPTFΛ͏ͷ͕ࠓͷͱ ͜Ζແͦ͏ w $PNQPTFࣗମ׳ΕΔͱշదʹϨΠΞτͰ͖Δ
$PNQPTFΛݟӽͯ͠ࠓͰ͖Δ͜ͱ w "OESPJE"SDIJUFDUVSF$PNQPOFOUʹଇ࣮ͬͨɾઃܭΛ͍ͯ͠Δ͜ͱ w ެ͔ࣜΒ(VJEFUPBQQBSDIJUFDUVSFͱ͍͏υΩϡϝϯτ͕༻ҙ͞Ε͍ͯΔ w IUUQTEFWFMPQFSBOESPJEDPNKFUQBDLHVJEF w ݫີʹ7JFXʹ͖࣋ͭͰͳ͍ϩδοΫঢ়ଶΛ͍࣋ͬͯͳ͍͜ͱ w
$PNQPTFͷஔ͖͑Ͱඞཁͳมߋ͕7JFX͚ͩʹ͑Δ͜ͱ͕Ͱ͖Δ w $PNQPTFΛ৮͓ͬͯ͘͜ͱ
ࢀߟ w IUUQTEFWFMPQFSBOESPJEDPNKFUQBDLDPNQPTF w IUUQTEFWFMPQFSBOESPJEDPNKFUQBDLDPNQPTFJOUFSPQ w IUUQTEFWFMPQFSBOESPJEDPNKFUQBDLHVJEF w IUUQTHJUIVCDPNNBUFSJBMDPNQPOFOUTNBUFSJBMDPNQPOFOUTBOESPJEDPNQPTFUIFNFBEBQUFS w
IUUQTHJUIVCDPNDISJTCBOFTBDDPNQBOJTU Ҡߦʹ༻ͨ͠ϓϩδΣΫτ w IUUQTHJUIVCDPNVIPPJ6IPPJ1JD#PPL"OESPJE w 5IBOLT!UIF@VIPPJ 'PSLઌͰࢼ͠ʹ$PNQPTFҠߦͨ͠13 w IUUQTHJUIVCDPN/6NFSP"OE%FW6IPPJ1JD#PPL"OESPJEQVMM
5IBOLZPV