Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
カクヨムAndroidアプリのリブート
Search
Nabe
June 08, 2025
Programming
0
550
カクヨム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.2k
Android アプリのプロジェクトをモダンにし続ける工夫
numeroanddev
1
720
Material 3で Material 2ぽい見た目にする
numeroanddev
2
620
Google I/O 2023 の 個人的おすすめセッションの紹介 / Introducing interesting sessions at Google IO 2023
numeroanddev
1
440
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
AWS CDKの推しポイントN選
akihisaikeda
1
240
LLM Çağında Backend Olmak: 10 Milyon Prompt'u Milisaniyede Sorgulamak
selcukusta
0
120
S3 VectorsとStrands Agentsを利用したAgentic RAGシステムの構築
tosuri13
6
300
Microservices rules: What good looks like
cer
PRO
0
1.2k
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
6
3k
AIの誤りが許されない業務システムにおいて“信頼されるAI” を目指す / building-trusted-ai-systems
yuya4
6
2.8k
大体よく分かるscala.collection.immutable.HashMap ~ Compressed Hash-Array Mapped Prefix-tree (CHAMP) ~
matsu_chara
1
220
ローターアクトEクラブ アメリカンナイト:川端 柚菜 氏(Japan O.K. ローターアクトEクラブ 会長):2720 Japan O.K. ロータリーEクラブ2025年12月1日卓話
2720japanoke
0
730
Tinkerbellから学ぶ、Podで DHCPをリッスンする手法
tomokon
0
120
FluorTracer / RayTracingCamp11
kugimasa
0
220
sbt 2
xuwei_k
0
270
UIデザインに役立つ 2025年の最新CSS / The Latest CSS for UI Design 2025
clockmaker
18
7.3k
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
The Language of Interfaces
destraynor
162
25k
Faster Mobile Websites
deanohume
310
31k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3k
Embracing the Ebb and Flow
colly
88
4.9k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
How to Ace a Technical Interview
jacobian
280
24k
A Tale of Four Properties
chriscoyier
162
23k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
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