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
unskilled team development for android
Search
Shinnosuke Kugimiya
June 01, 2016
Programming
1
1k
unskilled team development for android
Shinnosuke Kugimiya
June 01, 2016
Tweet
Share
More Decks by Shinnosuke Kugimiya
See All by Shinnosuke Kugimiya
UIテストはもうMaestroでいいのかもしれない話
kgmyshin
22
12k
新規開発を始めるときにやるべきこと
kgmyshin
19
8.7k
android app error handling
kgmyshin
1
1.4k
solid+cqs+dry
kgmyshin
35
9.8k
Paging Library ~ アイテムの更新 ~
kgmyshin
2
3.2k
KotlinでReact Native(expo) を使いたい
kgmyshin
2
1.1k
新規チームで新規開発を始める時にやること
kgmyshin
40
8.4k
android-multi-module-with-dagger
kgmyshin
10
6k
kotlin linter
kgmyshin
12
15k
Other Decks in Programming
See All in Programming
最新TCAキャッチアップ
0si43
0
140
TypeScriptでライブラリとの依存を限定的にする方法
tutinoko
2
670
Better Code Design in PHP
afilina
PRO
0
120
みんなでプロポーザルを書いてみた
yuriko1211
0
260
광고 소재 심사 과정에 AI를 도입하여 광고 서비스 생산성 향상시키기
kakao
PRO
0
170
初めてDefinitelyTypedにPRを出した話
syumai
0
410
Macとオーディオ再生 2024/11/02
yusukeito
0
370
Click-free releases & the making of a CLI app
oheyadam
2
110
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
1k
弊社の「意識チョット低いアーキテクチャ」10選
texmeijin
5
24k
エンジニアとして関わる要件と仕様(公開用)
murabayashi
0
290
3rd party scriptでもReactを使いたい! Preact + Reactのハイブリッド開発
righttouch
PRO
1
600
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
It's Worth the Effort
3n
183
27k
What's new in Ruby 2.0
geeforr
343
31k
Happy Clients
brianwarren
98
6.7k
Six Lessons from altMBA
skipperchong
27
3.5k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
Adopting Sorbet at Scale
ufuk
73
9.1k
Writing Fast Ruby
sferik
627
61k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
0
89
Transcript
ະख़ͳνʔϜ։ൃ for Android @kgmyshin
͜Μͳঢ়گᶃ • ͍͍ͩͨ20ສߦऑ͘Β͍ɺը໘50ऑ͘Β͍ͷ AndroidΞϓϦΛ࡞Δ͜ͱʹͳͬͨ • ΞχϝʔγϣϯΓΓ • ΫΠζͩͬͨΓԻೝࣝͩͬͨΓ͢Δػೳ͕͋ͬͯɺ APIୟ͍ͯදࣔ͢Δ͚ͩ͡Όͳ͍ͷ͕ͦͦ͋͜͜Δ •
iOS͢ͰʹϦϦʔεࡁΈ
͜Μͳঢ়گᶄ • iOSͷ࣌ɺϕςϥϯiOSΤϯδχΞ2ਓͱࣗ ͩͬͨ • Androidͷϝϯόʔࣗͱ৽ଔͱiOSΤϯδ χΞ • ظؒiOSͷ࣌ͱಉ͘͡Β͍
͕ͩͬͨɺ݁Ռ • ΕΔ͜ͱͳ͘ແࣄϦϦʔεͰ͖ͨ • ࠓͷͱ͜Ζɺͳ͘ӡ༻Ͱ͖ͯΔ
͜ͷൃදͰ • ॳظʹͬͯΑ͔ͬͨ͜ͱΛൃද͠·͢ • Βͳͯ͘Α͔ͬͨ͜ͱ࣌ؒʹऩ·Βͳ͍ ͷͰɺڵຯ͋Εฉ͍͍ͯͩ͘͞
ͬͯΑ͔ͬͨ͜ͱ • ઃܭํΛ͔ͬ͠ΓܾΊͨ • ςετඞͣॻ͍ͯΒͬͨ • Theme, StyleͷՃ/มߋېࢭ • colorͷՃېࢭ
• dimens, strings, shape, selector͜·ΊʹΔ • Ϋϥεਤॻ͍ͯΒͬͨ(৽ଔ͚)
ઃܭํΛ͔ͬ͠ΓܾΊͨ ྫ͑ɺ͋ΔػೳΛ࡞Δͱͳͬͨ࣌ʹ AActviity, APresenter, AUseCase, ARepository Λ࡞Εྑ͍ͱ୭Ͱ૾Ͱ͖ΔϨϕϧ
͜͜ΒลΛक͓͚ͬͯԿͰ ͍͍ͱࢥ͏ • ඇಉظ • ӬଓԽ • ϏδωεϩδοΫ • Πϕϯτཧ
• Viewͷཧ • ϑϨʔϜϫʔΫಠࣗͷΫηͷཧ
͜͏͢Δ͜ͱͰ • θϩϕʔεͰߟ͑ͳ͍͍ͯ͘ͷͰૣ͍ • ϑϨʔϜϫʔΫಠࣗͷΫηΛ͋Β͔͡Ίཧ ͍ͯ͠ΔͷͰiOSΤϯδχΞͰAndroidಠಛ ͷ᠘ʹͻ͔͔ͬΓͮΒ͍
ςετඞͣॻ͍ͯΒͬͨ • ςετͷ༰͕ඍົͰɺॻ͍ͨํ͕ྑ͍ • ॻ͔ͳ͍߹ͱॻ͘߹Ͱɺશવίʔυ͕มΘΔ • mockͰ͖Δίʔυ͔Ͳ͏͔ • ޙ͔Βॻ͘ͱܾΊͪΌ͏ͱɺmockͰ͖ͳ͍ίʔυʹͳͬͯΔ͜ͱ͕ଟ ͯ͘౸ఈ͑ͳ͍ίετʹͳΓ͏Δ
• ઃܭํΛࡉ͔ͯ͘͠ΔͷͰɺςετํࡉ͔͘ॻ͍͍ͯͯɺجຊత ʹػೳ࣮࣌ಉ༷ͦΜͳʹߟ͑Δ͜ͱ͕ͳ͍ͷͰૣ͍(ػցతʹͰ͖Δɺ ཻʹΑΔ͚ͲҰͭͷϓϧϦΫʹ͍͍ͩͨ30͔Β1࣌ؒ͘Β͍)
colorͷՃېࢭ • ͋Β͔͡ΊσβΠφʔʹΒͬͯΔΧϥʔύο τΛొ͍ͯ͠Δ • ͦͷͨΊɺՃඞཁͳ͍ͣͳͷͰېࢭ
Theme, StyleͷՃ/มߋېࢭ • ͋Β͔͡ΊຊʹͲ͜Ͱ͏ͷ࡞͓ͬͯ ͘ • ͦΕҎ֎جຊతʹՃېࢭ • ཚཱ͞ΕΔͱऩर͕͔ͭͳ͘ͳΔ •
উखʹมߋ͞ΕΔͱɺҙਤ͠ͳ͍ͱ͜Ζͷݟͨ ͕มΘͬͯϨϏϡʔͰ֬ೝͰ͖ͳ͍
dimens,strings,shape, selector͜·ΊʹΔ • ຊʹͲ͜Ͱ͏ͷ͋Β͔͡Ί࡞͓ͬͯ͘ • ͋Β͔͡Ί͋Δͷมߋېࢭ • উखʹมߋ͞ΕΔͱɺҙਤ͠ͳ͍ͱ͜Ζͷݟͨ ͕มΘͬͯϨϏϡʔͰ֬ೝͰ͖ͳ͍ •
ͳͷͰɺͦΕҎ֎جຊతʹ͜·ΊʹՃͯ͠ Β͏
Ϋϥεਤॻ͍ͯΒͬͯϓϧϦΫ ͷઆ໌ʹషͬͯΒͬͨ(৽ଔ͚) • ಋೖલ • ઃܭํෆཧղ • զͷڧ͍ίʔυ(͢Ͱʹ͋ΔίʔυΛࢀߟʹ͠ͳ͍) • ϝιου໊ɺΫϥε໊͕Θ͔ΓͮΒ͔ͬͨ
• ϨϏϡʔ࣌ʹൃ֮ͯ͠ɺ΄΅Γ͠Έ͍ͨͳ͜ͱ ͕͕͍͋ͬͯ࣌ؒͬͨ͘͢͝ͳ͔ͬͨ
ΫϥεਤΛඳ͍ͯΒͬͨΒ • ઃܭํͷ৯͍ҧ͍Λ͋Β͔͡Ίநग़Ͱ͖ͨ • ϝιου໊ɺΫϥε໊ΛϨϏϡʔ͍͢͠ • ΫϥεਤΛॻ͘͜ͱͰɺͦΕΒʹूதͯ͠ߟ͑ ΔͷͰɺΫϥεઃܭωʔϛϯάͷೳྗ্͕͕ Γ͍͢ •
ೋखؒͱ͍͏͜ͱ͕ͳ͘ͳͬͨ
Ұݴʹ·ͱΊΔͱ • ͋Β͔͡Ίߟ͑ΒΕΔͷɺઌʹߟ͖͑ͬ ͯ͠·͏͓ͯ͜͠͏ • άϩʔόϧͳͷ͋Β͔͡Ί࡞ͬͯมߋෆ Մͱͯ͠ɺࡉ͔͍ͷҰܧঝͳͲߟ͑ͣ ʹ࡞ͬͯ͠·ͬͨํ͕Α͍
ͱ͍͑ • ͕࣌ؒܦͭʹͭΕͯɺΈΜͳ͍ͯ͘͠ͷ ͰͲΜͲΜ͍ͯ͜͠͏ • ࠷ॳث࡞ͬͯఢͯ͠ɺͦͷثΛͬͯ ͍͘Πϝʔδ • ͩΜͩΜث࡞ΓʹࢀՃͯ͠Β͏Α͏ͳ Πϝʔδ