$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
カクヨムAndroidアプリのリブート
Search
Nabe
June 08, 2025
Programming
0
560
カクヨムAndroidアプリのリブート
Hatena Engineer Seminar #33 カクヨムアプリ編
https://hatena.connpass.com/event/355579/
Nabe
June 08, 2025
Tweet
Share
More Decks by Nabe
See All by Nabe
GraphicsLayerのBitmap作成
numeroanddev
0
210
GraphQLとGigaViewer for Apps
numeroanddev
4
4.3k
Android アプリのプロジェクトをモダンにし続ける工夫
numeroanddev
1
720
Material 3で Material 2ぽい見た目にする
numeroanddev
2
620
Google I/O 2023 の 個人的おすすめセッションの紹介 / Introducing interesting sessions at Google IO 2023
numeroanddev
1
450
Jetpack ComposeのTalkback対応/Improve Talkback in Jetpack Compose
numeroanddev
0
550
Baseline Profilesでアプリのパフォーマンスを向上させる / Improve app performance with Baseline Profiles
numeroanddev
0
940
Jetpack Composeでアプリを開発して遭遇した問題
numeroanddev
0
730
Material3(Material You) の変更点 / Changes in Material3(Material You)
numeroanddev
4
1.5k
Other Decks in Programming
See All in Programming
Jetpack XR SDKから紐解くAndroid XR開発と技術選定のヒント / about-androidxr-and-jetpack-xr-sdk
drumath2237
1
190
ローカルLLMを⽤いてコード補完を⾏う VSCode拡張機能を作ってみた
nearme_tech
PRO
0
150
Go コードベースの構成と AI コンテキスト定義
andpad
0
140
Findy AI+の開発、運用におけるMCP活用事例
starfish719
0
1.7k
AIコーディングエージェント(NotebookLM)
kondai24
0
220
AI時代を生き抜く 新卒エンジニアの生きる道
coconala_engineer
1
410
Context is King? 〜Verifiability時代とコンテキスト設計 / Beyond "Context is King"
rkaga
10
1.4k
脳の「省エネモード」をデバッグする ~System 1(直感)と System 2(論理)の切り替え~
panda728
PRO
0
120
The Art of Re-Architecture - Droidcon India 2025
siddroid
0
120
ZJIT: The Ruby 4 JIT Compiler / Ruby Release 30th Anniversary Party
k0kubun
0
260
認証・認可の基本を学ぼう後編
kouyuume
0
250
Grafana:建立系統全知視角的捷徑
blueswen
0
170
Featured
See All Featured
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
290
What the history of the web can teach us about the future of AI
inesmontani
PRO
0
370
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
0
180
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
49
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
0
1k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
200
YesSQL, Process and Tooling at Scale
rocio
174
15k
Mobile First: as difficult as doing things right
swwweet
225
10k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Statistics for Hackers
jakevdp
799
230k
Producing Creativity
orderedlist
PRO
348
40k
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