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
攻めのモバイルアプリ開発
Search
FUJI Goro
August 23, 2014
Technology
22
3.1k
攻めのモバイルアプリ開発
DevLOVE現場甲子園2014 東日本大会
http://devlove.doorkeeper.jp/events/11792
の発表資料です。
FUJI Goro
August 23, 2014
Tweet
Share
More Decks by FUJI Goro
See All by FUJI Goro
How to Boost Your Code with WebAssembly
gfx
2
2.9k
AssemblyScriptでライブラリコードの高速化をしてみる
gfx
5
3.1k
実践TypeScriptトークバトル
gfx
1
1.1k
歴史的経緯の説明 as code
gfx
7
2.8k
Elasticsearchによる 全文検索の実装 in Rails
gfx
6
9.5k
すばらしきGraphQLのSEKAIへようこそ
gfx
20
9.4k
マルチテナント・ウェブアプリケーションの実践
gfx
14
9.5k
How to choose the ORM on Android
gfx
1
4.2k
How Do We Get Along With Static Types
gfx
5
3.4k
Other Decks in Technology
See All in Technology
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
140
SREからゼロイチプロダクト開発へ ー越境する打席の立ち方と期待への応え方ー / Product Engineering Night #8
itkq
2
1k
QA/SDETの現在と、これからの挑戦
imtnd
0
150
今日からはじめるプラットフォームエンジニアリング
jacopen
8
1.7k
AIでめっちゃ便利になったけど、結局みんなで学ぶよねっていう話
kakehashi
PRO
1
420
技術者はかっこいいものだ!!~キルラキルから学んだエンジニアの生き方~
masakiokuda
2
280
3D生成AIのための画像生成
kosukeito
2
320
4/17/25 - CIJUG - Java Meets AI: Build LLM-Powered Apps with LangChain4j (part 2)
edeandrea
PRO
0
140
【Λ(らむだ)】最近のアプデ情報 / RPALT20250422
lambda
0
120
AIエージェント開発手法と業務導入のプラクティス
ykosaka
9
2.2k
AWS全冠芸人が見た世界 ~資格取得より大切なこと~
masakiokuda
5
6.5k
地味にいろいろあった! 2025春のAmazon Bedrockアップデートおさらい
minorun365
PRO
1
480
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Designing Experiences People Love
moore
142
24k
A designer walks into a library…
pauljervisheath
205
24k
How to Think Like a Performance Engineer
csswizardry
23
1.5k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
Speed Design
sergeychernyshev
29
900
GraphQLの誤解/rethinking-graphql
sonatard
71
10k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.5k
The Language of Interfaces
destraynor
157
25k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.2k
Six Lessons from altMBA
skipperchong
28
3.7k
Transcript
߈ΊͷϞόΠϧΞϓϦ։ൃ Fuji, Goro (@__gfx__) #devloveٕ 4ճද ʢඈͼೖΓࢀՃʣ 2014/08/23
ࣗݾհ • ౻ ޗ (gfx) • CookpadͷϞόΠϧΤϯδχΞ(iOS/Android) • ϥΠϒϥϦ։ൃ։ൃڥඋɾࣗಈԽͳͲ •
background: C/C++, Perl, JavaScript (LLଟΊ) • ߈Ίͷ։ൃڥɾମ੍ͮ͘ΓΛ͍͖͍ͯͨ͠
– Fuji, Goro (#devloveٕ, 2014) “ʮ߈Ίʯͱɺݱঢ়ҡ࣋ʹྲྀ͞ΕΔؾ࣋ ͪʹཱ͔ͪ͏ҙࢤͰ͋Δ”
߈Ίͷ։ൃϫʔΫϑϩʔ
Web։ൃݱͷ͋Δ1γʔϯ • ܧଓతσϦόϦʔ࠷ߴʂCI͋Δ͔Β࠷ݶͷ ࣭อূͰ͖Δ͠ɺ͋ͬͨΒϩʔϧόο Ϋ͢Ε͍ΑͶʂ • ϦʔϯελʔτΞοϓ࠷ߴʂMVP͔Βͷվྑ ͰάΠάΠՁΛ͔ͨΊͯ͜㽉㽉
Q. ϞόΠϧΞϓϦಉ͡ϊϦͰ࡞ΕΔʁ
A. ແཧ
ܧଓσϦόϦʔͰ͖ͳ͍ • ςετ͕WebΞϓϦͱൺֱͯ͘͠͠CIͰࣗಈͰς ετͰ͖Δൣғ͕ڱ͍ • Ξοϓσʔτͷڧ੍͕͍͠ɻ͋ΒΏΔόʔδϣϯ ࢢʹΓଓ͚ΔʢϢʔβʔͷυϩοϓΛ֮ޛ͢ ΔͳΒڧ੍ΞοϓσʔτΛଅ͢͜ͱͰ͖Δ͕…ʣ • submit͔Β৴·Ͱ࣌ؒ(Play)͔Βिؒ
(AppStore)͔͔Δ
MVP͔ΒҭͯΔͷ͍͠ • ϚʔέςΟϯάతʹϓϥοτϑΥʔϜετΞͷϨϏϡʔ ͕ͱͯॏཁͰɺΫΦϦςΟͷ͍όʔδϣϯ͕ΞϓϦ ࣗମͷΛҾͬுΔʢGoogle Playʣ • Πϯετʔϧͷϋʔυϧ͕ߴ͍ͨΊɺ࠷ॳͷҹ͕ѱ͘ ͯΞϯΠϯετʔϧ͞ΕΔͱɺ͋ͱ͔ΒͦͷҹΛ෴͠ ͯ࠶Πϯετʔϧͯ͠Β͏ͷ͕͍͠
• ࠷ॳͷόʔδϣϯͷΫΦϦςΟ͔ͳΓେࣄʢPlayͷβ ৴DeployGateͰϦʔϯ։ൃ͢Δʹෆेʣ
WebͱൺֱʹͳΒͳ͍ଟ༷ੑ • ϒϥβͷଟ༷ੑ: platform x software • platform: Windows, MacOSX
• software: IE7/8/9/10, Safari, Chrome • IEͰ͑͞ยखͰ͑ΒΕΔఔͷ • ͷଟ༷ੑ: platform x OS ver. x device • ͷछྨ͕ଟ͗ͯ͢ɺϦϦʔεલʹͯ͢ͷڥͰಈ࡞ ֬ೝ͢ΔͷෆՄೳ
! ͕͋ͬͨΒ ߈Ί͍͔ͯ͘͠ͳ͍
ϞόΠϧ։ൃϑϩʔͷ • ͍͍ͩͨʮߴ࣭ͳΞϓϦέʔγϣϯΛϦϦʔε͢Δ ͠͞ʯʹ͖ͭΔ • ܧଓతσϦόϦʔͳڥͰଘࡏ͠ͳ͍ɺ໌֬ͳίʔυϑ ϦʔζͱQAظؒΛઃ͚ͨ • AndroidΞϓϦͷ߹ݶఆެ։ػೳΛར༻ͯ͠க໋తͳ ͷ͋ΔόʔδϣϯͷΛ࠷ݶʹ͢Δ
• iOSΞϓϦͷ߹ϓϩϞίʔυʹΑΔલͷࢼݧͰக໋తͳ όʔδϣϯͷͷՄೳੑΛݮΒ͢
ίʔυϑϦʔζ • Web։ൃ: github-flow • ։ൃϒϥϯν(master)ΛৗʹσϓϩΠՄೳʹอͭ • ΞϓϦ։ൃ: git-flow (a
successful git branching model) • ։ൃϒϥϯν͔Βϒϥϯνϯάͯ͠CFͯ͠ϦϦʔεϒϥϯ νΛͭ͘ΓɺϦϦʔεϒϥϯνͰඞཁෆՄܽͳόάϑΟ ΫεҎ֎ҰߦΘͳ͍ • ͳ͓developϒϥϯνͭ͘Βͳ͍
$PEF 'SFF[F 3$ 'FBUVSF GPS NBTUFS GFBUVSF SFMFBTF
JNQPSUBOU CVHpY OFX GFBUVSF USJWJBM CVHpY
ݶఆެ։ • Google PlayͷػೳͰɺҰఆͷׂ߹ͷϢʔβʔ ʹ͚ͩΞοϓσʔτΛ৴Ͱ͖Δ • ࠷ॳʹ5%ϦϦʔε͢Δ͜ͱͰ • ͪ͜Βʹͱͬͯ5%ͰʮͨΓʯΛҾ͍ͨ ϢʔβʹͱͬͯͦΕ͕શͯͳͷͰɺ࠷ऴόʔ
δϣϯͷͭΓͰग़͢ͷલఏ
ϓϩϞίʔυ • ΞϓϦͷϨϏϡʔ͕௨ͬͨΒiTune connectͰ ϓϩϞίʔυΛͰ͖Δ • ެ։લʹɺެ։൛ͷΞϓϦΛҙͷʹΠ ϯετʔϧͰ͖Δ • ࠷ऴνΣοΫͰ͕͓͖ͨΒ༰ࣻͳ͘ϦϦʔ
εதࢭ
߈Ίͷ։ൃڥ
߈Ίͷ։ൃڥͮ͘Γ • ΞϓϦ։ൃ͕δϦශʹͳΔύλʔϯ • ΞϓϦ։ൃͰ͖Δϝϯόʔ͕গͳ͍ • ΞϓϦ։ൃνʔϜ͕ɺαʔϏε։ൃΛ͍ͯ͠Δ෦ ॺ͔ΒҎདྷΛ͏͚ͯΞϓϦΛͭ͘Δडୗ։ൃ৫ ʹͳͬͯ͠·͏ •
ࣗಈԽ͕͍͠Օॴ͕ଟ͍ • ؾ߹Ͱख࡞ۀ͢Δ͜ͱʹ׳Εͯ͠·͏
औΓΈ • ϞόΠϧΤϯδχΞΛ૿ͦ͏ʂ • ։ൃͷϊϋΛڞ༗͠Α͏ʂ • ࣗಈԽ͠Α͏ʂ
ϞόΠϧΤϯδχΞΛ૿ͦ͏ʂ • τοϓμϯͷϞόΠϧϑΝʔετએݴ • ੵۃతʹϖΞϓϩ͠ͳ͕Βͷ৽ػೳ։ൃ • ϞόΠϧ։ൃWeb։ൃͱ͔ͳΓҧ͏ • ࠷ॳͷนΛ͑Δ·Ͱͱ͜ͱΜ͖߹͏ •
͜ͷͰϞόΠϧ։ൃΛܦݧͨ͠ΤϯδχΞ ͍ͩͿ૿͑ͨ
։ൃϊϋΛڞ༗͠Α͏ʂ • ڞ௨ϥΠϒϥϦΛඋͯ͠ϋΠεΩϧͳΤϯδχΞͷՌʹ͋ ͔ͣΔ • ࣾʹmaven repositorycocoapods repositoryΛઃఆͯ͠ ϥΠϒϥϦΛཧ •
ใൃ৴ΛΈԽ͢Δ • potatotipsͱ͍͏ษڧձΛ࣮ࢪ • WEB+DB PRESS Vol81ʮAndroidΞϓϦ։ൃ࠷લઢʯΛدߘ
ࣗಈԽ͠Α͏ʂ • ϦϦʔεΤϯδχΞϦϯά࡞ۀྔ͕ଟ͍ • ଐਓԽμϝɺઈର • ϦϦʔεϏϧυJenkinsͰߦ͏ • Google Play
Developer APIʢ·ͩಋೖͯ͠ͳ͍ʣ • apkΛplayʹΞοϓϩʔυ͢Δ • ΞϓϦͷઆ໌จεΫγϣΛgitཧ͢Δ
Q & A (1) • Q. ࣗಈςετͲ͏ͯ͠Δʁ • A. ϞσϧͱϢʔςΟϦςΟଟগɻUIͷࣗಈς
ετ͍ͯ͠ͳ͍͕ɺCIͰओཁͳը໘ͷεΫγϣ ΛࡱΔͷΓ࢝Ί͍ͯΔ • Q. ϦϦʔεαΠΫϧʁ • A. iOS/Androidͱʹ2िؒʹҰͷϦϦʔε
Q & A (2) • Q. ίϛϡχέʔγϣϯͲ͏ͯ͠Δʁ • A. HipChat
+ github issuesɻgithub webhookͰrepo ͷมߋΛHipChatʹ௨͢ΔʢॹͰforce pushͰ ͖ͳ͍ʂʣ • Q. CIʁ • A. JenkinsΛͬͯίϛοτ͝ͱʹjobΛΒͤɺՌΛ DeployGate/TestFlightͰ։ൃ൛Λ͍ͯ͠Δ
Q & A (3) • Q. υοάϑʔσΟϯάͲ͏ͯ͠Δʁ • A. Ͱ͖͍ͯͳ͍ɻ͍͍ํ๏͕͋ͬͨΒڭ͑ͯ΄
͍͠ • Q. ͦΕͰɺࣾडୗମ੍ղফͰ͖ͨͷ͔ • A. ·ͩશʹղফͰ͖͍ͯͳ͍ɻ͍͍ํ๏͕ ͋ͬͨΒڭ͑ͯ΄͍͠
ؔ࿈ࢿྉ • Mobile First Development at COOKPAD (2014/5/29) •
rebuild.fm/45 (podcast) (2014/5/30) • AndroidΞϓϦͷϦϦʔεͯ͠·͔͢ (2014/8/20)