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
290
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
250
中規模以上のアプリ開発におけるCIレシピとリリースフロー戦略
kazakago
6
8.2k
Androidアプリにおける複雑な画面と向き合うための設計戦略
kazakago
1
290
Annotation Processingを 駆使したコード生成で ボイラープレートコードを駆逐しよう!
kazakago
2
6.2k
お う ち ハ ッ ク
kazakago
0
190
モバイルアプリ開発におけるブランチ運用でこの先生きのこるには
kazakago
0
100
まだJavaで消耗してるの?Kotlinのすすめ
kazakago
0
170
Androidでユーザーの大切なデータを預かる
kazakago
0
1k
Other Decks in Programming
See All in Programming
Cloudflare MCP ServerでClaude Desktop からWeb APIを構築
kutakutat
1
540
42 best practices for Symfony, a decade later
tucksaun
1
180
HTTP compression in PHP and Symfony apps
dunglas
2
1.7k
CSC509 Lecture 14
javiergs
PRO
0
140
Zoneless Testing
rainerhahnekamp
0
120
良いユニットテストを書こう
mototakatsu
5
1.9k
ドメインイベント増えすぎ問題
h0r15h0
1
190
The Efficiency Paradox and How to Save Yourself and the World
hollycummins
1
440
Keeping it Ruby: Why Your Product Needs a Ruby SDK - RubyWorld 2024
envek
0
180
モバイルアプリにおける自動テストの導入戦略
ostk0069
0
110
これでLambdaが不要に?!Step FunctionsのJSONata対応について
iwatatomoya
2
3.6k
たのしいparse.y
ydah
3
120
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
Documentation Writing (for coders)
carmenintech
66
4.5k
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.4k
Raft: Consensus for Rubyists
vanstee
137
6.7k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
48
2.2k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
95
17k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.3k
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Λࢹ͢Δ͚ͩͰ
ϥΠϑαΠΫϧʹԠͨ͡ ೳಈతͳΞΫγϣϯऔΒͳ͍
%%%ͷੵۃతͳద༻ ͜Ε͔Β
͞ΒͳΔϚϧνϞδϡʔϧԽ ͜Ε͔Β
ʙͷϨΠϠʔͷߏங ͜Ε͔Β
͜Ε͔Β ·ͩ·ͩͨ͘͞Μ͋ΔΜͰ͕͢ ͕࣌ؒͳ͍ͷͰׂѪ͠·͢
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠