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
with_Android版における今までのアーキテクチャとこれから.pdf
Search
kazakago
January 29, 2020
Programming
2
310
with_Android版における今までのアーキテクチャとこれから.pdf
Matching Dev Meetup #5 発表資料
https://matching-dev-group.connpass.com/event/158568/
kazakago
January 29, 2020
Tweet
Share
More Decks by kazakago
See All by kazakago
OpenSTFによる検証端末管理とその先の一手
kazakago
0
280
中規模以上のアプリ開発におけるCIレシピとリリースフロー戦略
kazakago
6
9k
Androidアプリにおける複雑な画面と向き合うための設計戦略
kazakago
1
310
Annotation Processingを 駆使したコード生成で ボイラープレートコードを駆逐しよう!
kazakago
2
7k
お う ち ハ ッ ク
kazakago
0
200
モバイルアプリ開発におけるブランチ運用でこの先生きのこるには
kazakago
0
130
まだJavaで消耗してるの?Kotlinのすすめ
kazakago
0
180
Androidでユーザーの大切なデータを預かる
kazakago
0
1k
Other Decks in Programming
See All in Programming
What's new in Adaptive Android development
fornewid
0
140
プロダクトという一杯を作る - プロダクトチームが味の責任を持つまでの煮込み奮闘記
hiliteeternal
0
430
Flutter로 Gemini와 MCP를 활용한 Agentic App 만들기 - 박제창 2025 I/O Extended Seoul
itsmedreamwalker
0
120
QA x AIエコシステム段階構築作戦
osu
0
250
それ CLI フレームワークがなくてもできるよ / Building CLI Tools Without Frameworks
orgachem
PRO
17
3.7k
0から始めるモジュラーモノリス-クリーンなモノリスを目指して
sushi0120
0
250
Go製CLIツールをnpmで配布するには
syumai
2
1.1k
新しいモバイルアプリ勉強会(仮)について
uetyo
1
250
No Install CMS戦略 〜 5年先を見据えたフロントエンド開発を考える / no_install_cms
rdlabo
0
470
PHPUnitの限界をPlaywrightで補完するテストアプローチ
yuzneri
0
390
Bedrock AgentCore ObservabilityによるAIエージェントの運用
licux
8
570
DynamoDBは怖くない!〜テーブル設計の勘所とテスト戦略〜
hyamazaki
0
190
Featured
See All Featured
Music & Morning Musume
bryan
46
6.7k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
332
22k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
[RailsConf 2023] Rails as a piece of cake
palkan
56
5.7k
Navigating Team Friction
lara
188
15k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Balancing Empowerment & Direction
lara
1
530
The Straight Up "How To Draw Better" Workshop
denniskardys
235
140k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.5k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
Transcript
XJUI"OESPJE൛ʹ͓͚Δ ࠓ·ͰͷΞʔΩςΫνϟͱ͜Ε͔Β ాଜݠհ!,B[B,BHP /*4-5% JMMVTUFECZݪ
ࣗݾհ wాଜݠհ!,B[B,BHP wגࣜձࣾΠάχε wXJUI"OESPJE൛ΤϯδχΞ wJ04ͬͯΔΑ
None
XJUIͱ͍͏ࠗ׆αʔϏεͷ "OESPJE൛։ൃอकΛ ୲ͯ͠΄͍͠Μ͚ͩͲ
ͪͳΈʹ
લͷ୲ΤϯδχΞɺ ਖ਼ࣾһશһ͍ͳ͘ͳΔ͔Β ͋ͱΑΖ͘͠
w6*ΞʔΩςΫνϟɿ.71 wγεςϜΞʔΩςΫνϟɿ$MFBO"SDIJUFDUVSF w+BWB wγϯάϧϞδϡʔϧ wʮಥ؏Ͱ࡞͔ͬͨΒ͙ͪΌ͙ͪΌͰ͢·Μͳʯʢҙ༁ʣ Ҿ͖ܧ͗࣌ͷલ୲ऀͷ
+BWB,PUMJOͷஔ͖͑
+BWB,PUMJOͷஔ͖͑ ͜Ε͕ͳ͔ͳ͔ਐ·ͳ͍
+BWB,PUMJOͷஔ͖͑
+BWB,PUMJOͷஔ͖͑ ,PUMJOίϯόʔτΛ͍ͯ͘͠தͰ /PO/VMMͳϑΟʔϧυʹ+BWBଆ͔ΒOVMMΛ ͞Εͯ͠·͍ෆ۩߹͕ଟൃ
+BWB,PUMJOͷஔ͖͑ IUUQTTQFBLFSEFDLDPNQBSBZBKLLPOCBUBXPLBTVUBNBJ[VTVSV !QBSBZB,PUMJO'FTU
+BWB,PUMJOͷஔ͖͑ ݱࡏऑ͕,PUMJOԽ
ϚϧνϞδϡʔϧԽ
ϚϧνϞδϡʔϧԽ
7JFX 1SFTFOUFS 6TF$BTF ϚϧνϞδϡʔϧԽ &OUJUZ Ϣʔβʔ 3 FQPTJUPSZ %#
"1* αʔόʔ ΞϓϦ%# ϓϨθϯςʔγϣϯ ϨΠϠʔ υϝΠϯϨΠϠʔ σʔλϨΠϠʔ
ϚϧνϞδϡʔϧԽ ॳڊେͳγϯάϧϞδϡʔϧͩͬͨ BQQϞδϡʔϧ
BQQϞδϡʔϧ ϚϧνϞδϡʔϧԽ MFHBDZϞδϡʔϧ BQQϞδϡʔϧ QSFTFOUBUJPO Ϟδϡʔϧ EPNBJO Ϟδϡʔϧ EBUB Ϟδϡʔϧ
MFHBDZϞδϡʔϧ͔Β ใΛཧͭͭ͠ɺ ֤ϞδϡʔϧҠಈ͍ͤͯ͘͞
υϝΠϯϨΠϠʔͷׂͷݟ͠
7JFX 1SFTFOUFS 6TF$BTF υϝΠϯϨΠϠʔͷׂͷݟ͠ &OUJUZ Ϣʔβʔ 3 FQPTJUPSZ %#
"1* αʔόʔ ॳ%*1ݪଇ͕कΒΕ͓ͯΒͣ υϝΠϯ͕͞Ε͍ͯͳ͍ ঢ়ଶͩͬͨ ґ ଘ ؔ ΞϓϦ%#
υϝΠϯϨΠϠʔͷׂͷݟ͠ 3 FQPTJUPSZ %# "1* ,PJOʹΑΔ%*πʔϧͷಋೖ IUUQTJOTFSULPJOJP
7JFX 1SFTFOUFS 6TF$BTF υϝΠϯϨΠϠʔͷׂͷݟ͠ &OUJUZ Ϣʔβʔ 3 FQPTJUPSZ %#
"1* αʔόʔ υϝΠϯִ͕͞Εɺ "OESPJE߹͔Βղ์͞ΕͨͨΊ ΑΓϏδωεϩδοΫ ूதͰ͖ΔΑ͏ʹͳͬͨ ґ ଘ ؔ ґ ଘ ؔ ΞϓϦ%# υϝΠϯϨΠϠʔ ϐϡΞͳ+BWBϞδϡʔϧมߋ
ϓϨθϯςʔγϣϯϨΠϠʔͷಛԽ
7JFX 1SFTFOUFS 6TF$BTF ϓϨθϯςʔγϣϯϨΠϠʔͷಛԽ &OUJUZ Ϣʔβʔ 3 FQPTJUPSZ %#
"1* αʔόʔ ॳΩϟογϡ͕6*ଆʹ͋Γɺ υϝΠϯ͕ࣗϏδωεϩδοΫΛ ղܾ͢Δ͜ͱ͕Ͱ͖ͣ ϩδοΫ͕ϓϨθϯςʔγϣϯ ϨΠϠʔʹ࿙Εͯ͠·͍ͬͯͨ ϑΟʔϧυม ʹΑΔ ϝϞϦΩϟογϡ ॲ ཧ ͷ ྲྀ Ε ॲ ཧ ͷ ྲྀ Ε ॲཧͷྲྀΕ ΞϓϦ%#
ϓϨθϯςʔγϣϯϨΠϠʔͷಛԽ 3 FQPTJUPSZ %# "1* ΈΜͳେ͖ͳ ঢ়ଶཧपΓͷʂ
7JFX 1SFTFOUFS 6TF$BTF ϓϨθϯςʔγϣϯϨΠϠʔͷಛԽ &OUJUZ Ϣʔβʔ 3 FQPTJUPSZ %#
"1* αʔόʔ ॲ ཧ ͷ ྲྀ Ε ॲ ཧ ͷ ྲྀ Ε ॲཧͷྲྀΕ ΞϓϦ ϝϞϦΩϟογϡ ΞϓϦ%# ॲཧͷྲྀΕ ϑΟʔϧυม ʹΑΔ ϝϞϦΩϟογϡ υϝΠϯ͕ϏδωεϩδοΫͷ ղܾʹඞཁͳͯ͢ͷใ ΞΫηεͰ͖ΔΑ͏ʹͳͬͨ͜ͱͰ ϓϨθϯςʔγϣϯϨΠϠʔ͕ 6*ͷ੍ޚʹಛԽ
.71.77.ΞʔΩςΫνϟͷҠߦ
.71.77.ΞʔΩςΫνϟͷҠߦ 3 FQPTJUPSZ %# υϝΠϯϨΠϠʔ ϓϨθϯςʔγϣϯϨΠϠʔ "DUJWJUZ 7JFX 1SFTFOUFS
"DUJWJUZ JOUFSGBDF 1SFTFOUFS JOUFSGBDF ॳ1SFTFOUFSʹ"DUJWJUZͷΠϯελϯε͕ ͞Ε͓ͯΓը໘ભҠͳͲ͕ߦΘΕ͍ͯͨ "DUJWJUZଆ͕7JFXͷ੍ޚʹूதͰ͖͓ͯΒͣ 7ͱ1͕͓ޓ͍ʹґଘͨ͠ը໘͕ଟʑ͋ͬͨ ޓ͍ʹґଘʂ
.71.77.ΞʔΩςΫνϟͷҠߦ 7JFXͱ1SFTFOUFSͷ ͕͔ͬ͠ΓผΕͯͳ͍ͷ͕
.71.77.ΞʔΩςΫνϟͷҠߦ 1SFTFOUFSΛ7JFXؒͰڞ༗͢ΔΈ ͳ͍ͷͰ'BU"DUJWJUZʹͳΓ͍͢
.71.77.ΞʔΩςΫνϟͷҠߦ 3 FQPTJUPSZ %# υϝΠϯϨΠϠʔ ϓϨθϯςʔγϣϯϨΠϠʔ "DUJWJUZ 7JFX 7JFX.PEFM
ঢ়ଶͷࢹɾө 'SBHNFOU 'SBHNFOU 'SBHNFOU 7JFX 7JFX "DUJWJUZ֤'SBHNFOUͷ ཧͷΈΛ୲
.71.77.ΞʔΩςΫνϟͷҠߦ 'SBHNFOUͰ7JFXͷ୲ൣғΛ ࡉԽ͠'BU$POUSPMMFSԽΛࢭ
.71.77.ΞʔΩςΫνϟͷҠߦ 7JFX.PEFM͔Β7JFXͷґଘΛ ͳ͘͠ɺಠཱͨ͠ಈ࡞Λཱ֬
.71.77.ΞʔΩςΫνϟͷҠߦ ެࣜͷ+FUQBDLϥΠϒϥϦʹΑΔ .77.αϙʔτड͚ΒΕΔ
,PUMJO'MPXʹΑΔ ͜Ε͔Β ௨Λ࣠ͱͨ͠डಈతͳ6*
,PUMJO'MPXʹΑΔ௨Λ࣠ͱͨ͠डಈతͳ6
,PUMJO'MPXʹΑΔ௨Λ࣠ͱͨ͠डಈతͳ6 PO4UBSU PO1BVTF ͳͲ 6*ͷϥΠϑαΠΫϧʹґଘͯ͠ ൃՐ͢Δڍಈͬͯ 6*͕͍ͭͳʹΛ͖͔͢ೳಈతʹ ߟ͑ͯΔ͜ͱʹͳΒͳ͍͔ʁ
,PUMJO'MPXʹΑΔ௨Λ࣠ͱͨ͠डಈతͳ6 ͭ·Γ$MFBO"SDIJUFDUVSFͷ ࢥʹ͢ΔͷͰʁ
,PUMJO'MPXʹΑΔ௨Λ࣠ͱͨ͠डಈతͳ6 ϓϨθϯςʔγϣϯ ࢮ͍ͤͨ͞
,PUMJO'MPXʹΑΔ௨Λ࣠ͱͨ͠डಈతͳ6 ϓϨθϯςʔγϣϯϨΠϠʔॳظԽ࣌ʹ දࣔʹඞཁͳใΛTVCTDSJCFʢࢹʣ͢Δ͚ͩʹͯ͠ ඞཁʹԠͯ͡υϝΠϯଆ͕ೳಈతʹใΛ ฦͤΔΑ͏ʹ͍ͨ͠
,PUMJO'MPXʹΑΔ௨Λ࣠ͱͨ͠डಈతͳ6 ௨ͷΈ,PUMJOͷLPUMJOYDPSPVUJOFTͷ Ұ෦Ͱ͋Δ'MPXͱ$IBOOFMͰ࣮ݱͰ͖Δ
,PUMJO'MPXʹΑΔ௨Λ࣠ͱͨ͠डಈతͳ6 7JFX.PEFM 6TF$BTF σʔλͷࢹɾө ϓϨθϯςʔγϣϯϨΠϠʔ υϝΠϯϨΠϠʔ 'MPX%BUB Λฦ͢ϝιουΛ࡞Δ 'MPXΛࢹ͢Δ͚ͩͰ
ϥΠϑαΠΫϧʹԠͨ͡ ೳಈతͳΞΫγϣϯऔΒͳ͍
%%%ͷੵۃతͳద༻ ͜Ε͔Β
͞ΒͳΔϚϧνϞδϡʔϧԽ ͜Ε͔Β
ʙͷϨΠϠʔͷߏங ͜Ε͔Β
͜Ε͔Β ·ͩ·ͩͨ͘͞Μ͋ΔΜͰ͕͢ ͕࣌ؒͳ͍ͷͰׂѪ͠·͢
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠