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
1
Share
unskilled team development for android
Shinnosuke Kugimiya
June 01, 2016
More Decks by Shinnosuke Kugimiya
See All by Shinnosuke Kugimiya
Claude Code x Androidアプリ 開発
kgmyshin
1
2.4k
AndroidアプリエンジニアもMCPを触ろう
kgmyshin
2
1.4k
15分で分かった気になる dumpsys
kgmyshin
1
350
UIテストはもうMaestroでいいのかもしれない話
kgmyshin
28
13k
新規開発を始めるときにやるべきこと
kgmyshin
19
9.2k
android app error handling
kgmyshin
1
1.6k
solid+cqs+dry
kgmyshin
35
10k
Paging Library ~ アイテムの更新 ~
kgmyshin
2
3.5k
KotlinでReact Native(expo) を使いたい
kgmyshin
2
1.2k
Other Decks in Programming
See All in Programming
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
6
1.3k
今さら聞けないCancellationToken
htkym
0
210
Migrations : C'est une question d'hygiène !
vinceamstoutz
0
2.9k
oxlintはeslint/typescript-eslintを置き換えられるのか
shomafujita
2
300
プラグインで拡張される Context をtype-safe にする難しさと設計判断
kazupon
2
540
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
150
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
2
1.6k
AIエージェントと協働するCLI開発 — BunとOpenClawで学んだこと
yoshikouki
1
230
AI時代のUIはどこへ行く?その2!
yusukebe
19
6.3k
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
13
3.3k
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
110
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
110
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
530
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
420
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
350
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
Darren the Foodie - Storyboard
khoart
PRO
3
3.4k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
400
Ruling the World: When Life Gets Gamed
codingconduct
0
240
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.5k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.1k
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͜·ΊʹΔ • ຊʹͲ͜Ͱ͏ͷ͋Β͔͡Ί࡞͓ͬͯ͘ • ͋Β͔͡Ί͋Δͷมߋېࢭ • উखʹมߋ͞ΕΔͱɺҙਤ͠ͳ͍ͱ͜Ζͷݟͨ ͕มΘͬͯϨϏϡʔͰ֬ೝͰ͖ͳ͍ •
ͳͷͰɺͦΕҎ֎جຊతʹ͜·ΊʹՃͯ͠ Β͏
Ϋϥεਤॻ͍ͯΒͬͯϓϧϦΫ ͷઆ໌ʹషͬͯΒͬͨ(৽ଔ͚) • ಋೖલ • ઃܭํෆཧղ • զͷڧ͍ίʔυ(͢Ͱʹ͋ΔίʔυΛࢀߟʹ͠ͳ͍) • ϝιου໊ɺΫϥε໊͕Θ͔ΓͮΒ͔ͬͨ
• ϨϏϡʔ࣌ʹൃ֮ͯ͠ɺ΄΅Γ͠Έ͍ͨͳ͜ͱ ͕͕͍͋ͬͯ࣌ؒͬͨ͘͢͝ͳ͔ͬͨ
ΫϥεਤΛඳ͍ͯΒͬͨΒ • ઃܭํͷ৯͍ҧ͍Λ͋Β͔͡Ίநग़Ͱ͖ͨ • ϝιου໊ɺΫϥε໊ΛϨϏϡʔ͍͢͠ • ΫϥεਤΛॻ͘͜ͱͰɺͦΕΒʹूதͯ͠ߟ͑ ΔͷͰɺΫϥεઃܭωʔϛϯάͷೳྗ্͕͕ Γ͍͢ •
ೋखؒͱ͍͏͜ͱ͕ͳ͘ͳͬͨ
Ұݴʹ·ͱΊΔͱ • ͋Β͔͡Ίߟ͑ΒΕΔͷɺઌʹߟ͖͑ͬ ͯ͠·͏͓ͯ͜͠͏ • άϩʔόϧͳͷ͋Β͔͡Ί࡞ͬͯมߋෆ Մͱͯ͠ɺࡉ͔͍ͷҰܧঝͳͲߟ͑ͣ ʹ࡞ͬͯ͠·ͬͨํ͕Α͍
ͱ͍͑ • ͕࣌ؒܦͭʹͭΕͯɺΈΜͳ͍ͯ͘͠ͷ ͰͲΜͲΜ͍ͯ͜͠͏ • ࠷ॳث࡞ͬͯఢͯ͠ɺͦͷثΛͬͯ ͍͘Πϝʔδ • ͩΜͩΜث࡞ΓʹࢀՃͯ͠Β͏Α͏ͳ Πϝʔδ