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アプリのリブート
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Nabe
June 08, 2025
Programming
610
0
Share
カクヨムAndroidアプリのリブート
Hatena Engineer Seminar #33 カクヨムアプリ編
https://hatena.connpass.com/event/355579/
Nabe
June 08, 2025
More Decks by Nabe
See All by Nabe
GraphicsLayerのBitmap作成
numeroanddev
0
230
GraphQLとGigaViewer for Apps
numeroanddev
4
4.5k
Android アプリのプロジェクトをモダンにし続ける工夫
numeroanddev
1
760
Material 3で Material 2ぽい見た目にする
numeroanddev
2
650
Google I/O 2023 の 個人的おすすめセッションの紹介 / Introducing interesting sessions at Google IO 2023
numeroanddev
1
480
Jetpack ComposeのTalkback対応/Improve Talkback in Jetpack Compose
numeroanddev
0
580
Baseline Profilesでアプリのパフォーマンスを向上させる / Improve app performance with Baseline Profiles
numeroanddev
0
980
Jetpack Composeでアプリを開発して遭遇した問題
numeroanddev
0
750
Material3(Material You) の変更点 / Changes in Material3(Material You)
numeroanddev
4
1.6k
Other Decks in Programming
See All in Programming
メッセージングを利用して時間的結合を分離しよう #phperkaigi
kajitack
3
560
Coding at the Speed of Thought: The New Era of Symfony Docker
dunglas
0
4.6k
存在論的プログラミング: 時間と存在を記述する
koriym
5
780
ファインチューニングせずメインコンペを解く方法
pokutuna
0
270
PHP でエミュレータを自作して Ubuntu を動かそう
m3m0r7
PRO
2
170
Spec Driven Development: The End Of Vibe Coding | DevLand 2026
danielsogl
PRO
0
110
KagglerがMixSeekを触ってみた
morim
0
370
Strategy for Finding a Problem for OSS: With Real Examples
kibitan
0
140
モックわからないマン卒業記 ~振る舞いを起点に見直した、フロントエンドテストにおけるモックの使いどころ~
tasukuwatanabe
3
440
最初からAWS CDKで技術検証してもいいんじゃない?
akihisaikeda
4
180
実践ハーネスエンジニアリング #MOSHTech
kajitack
7
5.8k
「速くなった気がする」をデータで疑う
senleaf24
0
140
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Making Projects Easy
brettharned
120
6.6k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
410
Embracing the Ebb and Flow
colly
88
5k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
510
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
27
3.4k
Everyday Curiosity
cassininazir
0
190
Believing is Seeing
oripsolob
1
110
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
160
Discover your Explorer Soul
emna__ayadi
2
1.1k
sira's awesome portfolio website redesign presentation
elsirapls
0
210
Transcript
)BUFOB&OHJOFFS4FNJOBS ,B[VLJ8BUBOBCF ΧΫϤϜ"OESPJEΞϓϦͷϦϒʔτ
1SPGJMF w ͳ w 5XJUUFS!/BCF$PUU w (JU)VC/6NFSP"OE%FW w גࣜձࣾͯͳ w
"OESPJEBQQMJDBUJPOFOHJOFFS w +FUQBDL$PNQPTF w .BUFSJBM%FTJHO
ͯͳͷϊϕϧνʔϜͰ ΧΫϤϜͷΞϓϦΛੵۃతʹ։ൃ͍ͯ͠·͢
ΧΫϤϜͱ w גࣜձࣾ,"%0,"8"ͱڞಉ։ ൃ͍ͯ͠Δ8FCখઆαΠτ w ༷ʑͳখઆΛʮॻ͚ΔɺಡΊ Δɺ͑ΒΕΔʯ w 8FCʴJ04"OESPJEΞϓϦ IUUQTLBLVZPNVKQ
·ͰΞϓϦͷ։ൃʹ͋·ΓϦιʔεΛ ׂ͘͜ͱ͕Ͱ͖͍ͯ·ͤΜͰͨ͠
ੵۃ։ൃͰ͖͍ͯͳ͔ͬͨഎܠ w ΞϓϦϦϦʔε͔Β͠Β͘࡞ऀʹ͚ͨػೳ։ൃ͕ଟ͔ͬͨ w ΞϓϦಡऀ͚ w খઆΛॻ͘ɺಡΉମݧΛఏڙ͢Δ্ͰɺόοΫΤϯυͰͷେ͖ͳ։ൃ͕ଟ͔ ͬͨ w ϩΠϠϧςΟϓϩάϥϜɿ࡞Ո͚ͷऩӹؐݩϓϩάϥϜ
w αϙʔλʔζύεϙʔτɿಡऀ͕༗ྉͰ࡞ՈʹΪϑτΛଃΔ͜ͱ͕Ͱ͖Δ w ΧΫϤϜωΫετɿϓϩ࡞ՈʹΑΔΦϦδφϧ࿈ࡌ
લ·Ͱͷ։ൃମ੍ w ΧΫϤϜͷΞϓϦΛ։ൃ͍ͯ͠ΔϊϕϧνʔϜʹઐଐͷωΠςΟϒΞϓϦΤ ϯδχΞ͕͍ͳ͔ͬͨ w ΞϓϦͰରԠ͍ͯͨ͠ͷ w 8FCଆͷେܕػೳͷΞϓϦରԠ w ຖͷ4%,ߋ৽
w ॏେͳόάमਖ਼
͜Ε·Ͱͷ։ൃମ੍ʹ͓͚Δ՝ w ࠊΛਾ͑ͨ։ൃ͕Ͱ͖͍ͯͳ͍ w ࣾଞνʔϜͷঢ়گʹࠨӈ͞ΕΔ w ॏཁͰͳ͍όάमਖ਼ w ڍಈͷվળ w
ίʔυͷϝϯςφϯε
ωΠςΟϒΞϓϦΤϯδχΞ͕ J04ɾ"OESPJEͦΕͧΕਓͣͭνʔϜઐଐʹ🎉
͜Ε·ͰҎ্ʹੵۃతʹ։ൃΛ͢Δମ੍🚀
͜Ε·ͰҎ্ʹੵۃతͳ։ൃ w ੵۃతͳػೳ։ൃͱִि͝ͱͷఆظϦϦʔε w ͷϦϦʔεճ w J04ɿճ w "OESPJEɿճ w
ख͕ճ͍ͬͯͳ͔ͬͨόάमਖ਼ w ڍಈͷվળ w ϨΨγʔͳίʔυͷվળ w ৽͍ٕ͠ज़ͷಋೖ
w Ӿཡཤྺͷআػೳ w ϏϡʔϫʔͷจࣈαΠζΛஈ֊ w 5IFNFE*DPOରԠ w ΟδΣοτ w ෆ۩߹ɾΫϥογϡमਖ਼
͜Ε·ͰҎ্ʹੵۃతͳ։ൃ ओͳϦϦʔε IUUQTLBLVZPNVKQJOGPFOUSZ
w ϏϡʔϫʔͷػೳՃ w ࣍ͰͷΤϐιʔυͷطಡදࣔ w ಡྃޙը໘ͷ͓͢͢ΊػೳڧԽ w ϗʔϜը໘ͷҰ৽ w Ϣʔβʹ߹Θ͓ͤͨ͢͢Ί࡞ͷ
දࣔ w ϥϯΩϯάը໘ͷ৽ઃ ͜Ε·ͰҎ্ʹੵۃతͳ։ൃ ओͳϦϦʔε IUUQTLBLVZPNVKQJOGPFOUSZIPNF@SFOFXBM
ΧΫϤϜ"OESPJEΞϓϦΛߏ͍ٕͯͨ͠ज़
w ࠷ॳͷϦϦʔε͕ w "OESPJE͕࠷৽ w "OESPJE4UVEJP w ,PUMJO ΧΫϤϜ"OESPJEΞϓϦΛߏ͍ٕͯͨ͠ज़ ΧΫϤϜ"OESPJEΞϓϦͱ࣌ͷपลٕज़
IUUQTLBLVZPNVKQJOGPFOUSZBQQSFMFBTFE
ΧΫϤϜ"OESPJEΞϓϦΛߏ͍ٕͯͨ͠ज़ w େ෦͕+BWBͰҰ෦͕,PUMJO w %BUB#JOEJOH w /P+FUQBDL$PNQPTF w 3Y+BWBͱ3Y-JGFDZDMF w
%BHHFS"OESPJE4VQQPSU w खಈͰͷը໘ભҠ w 3FBMN w /PBSDIJUFDUVSF w Ұ෦3FBDU/BUJWF
ػೳ։ൃͱฒߦͯ͠গͣͭ͠ݱతʹ͍ͯ͘͠
গͣͭ͠ݱతʹ͍ͯ͘͠ ґଘϥΠϒϥϦͷߋ৽ w ,PUMJO w %BUB#JOEJOHͱ3FBMNͰLBQU͕ඞཁͳͷͰLBQUVTFLUSVF w +FUQBDLपΓͷߋ৽ͱมߋͷै w ͦͷଞ্͛ΕΔͷશͯ࠷৽ʹߋ৽͢Δ
গͣͭ͠ݱతʹ͍ͯ͘͠ )JMUҠߦ w ීஈͷ։ൃͰ%*पΓΛ؍ w )JMUҠߦͰࠔΓͦ͏ͳՕॴΛͲ͏ஔ͖͑Δ͔ࣄલʹݕূ w ҰؾʹҠߦͯ͠೦ೖΓʹಈ࡞֬ೝ
গͣͭ͠ݱతʹ͍ͯ͘͠ %BUB#JOEJOH͔Βͷ٫ w ϑΝΠϧ͋ͬͨͷΛগͣͭ͠7JFX#JOEJOHʹஔ͖͑ w πʔϧΛΘͣʹख࡞ۀͰஔ͖͑ w ڧ͔͚ͯશʹ٫
গͣͭ͠ݱతʹ͍ͯ͘͠ ϚϧνϞδϡʔϧ w ͻͱ·ͣઌʹ3FBMNΛϞδϡʔϧʹ w 3FBMNಛʹίʔυੜͷؔͰ ϞδϡʔϧʹΓग़͢ํ͕Ϗϧυ ʹԸܙ͕͋Δ w
ͦͷଞڞ௨ͷॲཧΛϞδϡʔϧʹ Γग़ͨ͠ΓɺঃʑʹϞδϡʔϧʹ ͍ͯ͠Δ్த
গͣͭ͠ݱతʹ͍ͯ͘͠ ͦͷଞ w +FUQBDL$PNQPTFͷಋೖ w ৽نը໘σβΠϯมߋ͕͋ΔՕॴ͔Β w "OESPJE7JFXͱڞଘ͢ΔܗͰແཧʹஔ͖͑͠ͳ͍ w ը໘ભҠΛ+FUQBDL/BWJHBUJPOʹஔ͖͑
w طଘͷը໘ͱભҠΛ/BW(SBQIʹఆٛ w ҾपΓΛ/BWJHBUJPOܦ༝Ͱऔಘ͢ΔΑ͏ʹมߋ w ը໘ભҠΛ/BWJHBUJPOʹஔ͖͑
ΧΫϤϜΞϓϦͱ3FBDU/BUJWF
ΧΫϤϜΞϓϦͱ3FBDU/BUJWF w ΧΫϤϜͷΞϓϦͰ෦తʹ3FBDU/BUJWFΛ༻͍ͯ͠·ͨ͠ w IUUQTESPJELBJHJKQUJNFUBCMF
ΧΫϤϜΞϓϦͱ3FBDU/BUJWF IUUQTTQFBLFSEFDLDPNUBLVKJHSBQIRMBDFBCCDDE TMJEF
ΧΫϤϜΞϓϦͱ3FBDU/BUJWF ಋೖޙͷ՝ w ։ൃʹϦιʔεׂ͕͚͍ͯͳ͔ͬͨͨΊʹ3FBDU/BUJWFͷߋ৽͕ͬͯ͠· ͍ɺ։ൃͷϒϩοΩϯάʹͳ͍ͬͯͨ w ։ൃڥ (SBEMF"OESPJE(SBEMF1MVHJO9DPEF ͷߋ৽͕3FBDU /BUJWFͰϒϩοΩϯά͞ΕΔ
w 3FBDU/BUJWFͰ༻͍ͯ͠Δ/PEF"QPMMPͷߋ৽Ͱ͖͍ͯͳ͍ w 3FBDU/BUJWFͦͷͷͷߋ৽ίετॏ͍ w &YQP͍ͬͯͳ͍
ΧΫϤϜΞϓϦͱ3FBDU/BUJWF ٫ܭը w 3FBDU/BUJWFΛ٫ͯ͠ωΠςΟϒ͚ͩʹ͢Δ͜ͱʹ w νʔϜମ੍ͷมԽ w ઐଐͷωΠςΟϒΞϓϦΤϯδχΞ͕͍Δ w ܧଓతʹ։ൃ͕ߦΘΕΔ
w ϦχϡʔΞϧͷܭը w 3FBDU/BUJWFͷ༻Օॴʹมߋ͕ೖΔܭը͕͋ͬͨ
ͱ͍͑·ͩ·ͩ՝͋Δ
ࠓޙͷ՝ w ݱతͳڥʹ͍͖ͭͭͭ͋Δ͠ɺ։ൃ͍͕͢͠Ͱ͖ͭͭ͋Δ ͕ɺ·ͩ·ͩ՝ଟ͍ w 3FBMN3Y+BWB w +BWB w ςετपΓͷڥඋ
ҰॹʹΧΫϤϜͷΞϓϦΛΑ͍ͯ͘͘͠ ؒΛืू͍ͯ͠·͢ʂ
5IBOLZPV