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
メルカリiOSアプリ開発の現状とこれから / Mercari Day 2017
Search
Naoki ISHIKAWA
January 20, 2017
Programming
3
6.7k
メルカリiOSアプリ開発の現状とこれから / Mercari Day 2017
#mercariday
Naoki ISHIKAWA
January 20, 2017
Tweet
Share
More Decks by Naoki ISHIKAWA
See All by Naoki ISHIKAWA
パラレルの通話を支える iOS アプリ上での技術
jarinosuke
0
2.1k
メルペイのエンジニアリング組織の変化と目指すチーム像
jarinosuke
5
6.3k
RIBs
jarinosuke
2
1.8k
US 版 Mercari をまるごと1から作り直した話
jarinosuke
2
4.3k
Drink Meetup with Mercari #36
jarinosuke
0
1.2k
Switching Icon.png depending on each environment
jarinosuke
2
11k
Other Decks in Programming
See All in Programming
TDD 実践ミニトーク
contour_gara
1
270
Laravel Boost 超入門
fire_arlo
2
170
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
300
1から理解するWeb Push
dora1998
1
160
Google I/O recap web編 大分Web祭り2025
kponda
0
2.9k
Rancher と Terraform
fufuhu
2
180
More Approvers for Greater OSS and Japan Community
tkikuc
1
110
A Gopher's Guide to Vibe Coding
danicat
0
200
レガシープロジェクトで最大限AIの恩恵を受けられるようClaude Codeを利用する
tk1351
4
1.5k
実用的なGOCACHEPROG実装をするために / golang.tokyo #40
mazrean
1
130
[FEConf 2025] 모노레포 절망편, 14개 레포로 부활하기까지 걸린 1년
mmmaxkim
0
1.4k
HTMLの品質ってなんだっけ? “HTMLクライテリア”の設計と実践
unachang113
1
560
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Making Projects Easy
brettharned
117
6.4k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
Building Adaptive Systems
keathley
43
2.7k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Fireside Chat
paigeccino
39
3.6k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Into the Great Unknown - MozCon
thekraken
40
2k
BBQ
matthewcrist
89
9.8k
Thoughts on Productivity
jonyablonski
69
4.8k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Transcript
ϝϧΧϦiOSΞϓϦ։ൃ ͷݱঢ়ͱ͜Ε͔Β Mercari DAY 2017 @AcademyHills Naoki Ishikawa
About Me • ੴथ (@jarinosuke) • Mercari, Inc (joined at
2016/05) •iOS Engineer
Agenda • ϝϧΧϦiOSΞϓϦ։ൃʹ͍ͭͯ •ݱঢ় •͜Ε͔Β • ·ͱΊ
ݱঢ়
νʔϜߏ
νʔϜߏ • JP ࡏॅ • 5ਓ
νʔϜߏ • JP ࡏॅ • 5ਓ • US ࡏॅ •
1ਓ
νʔϜߏ • JP ࡏॅ • 5ਓ • US ࡏॅ •
1ਓ • UK ࡏॅ • 1ਓ
ۀ༰ • ϝϧΧϦiOSΞϓϦͷ։ൃ • ίʔυϨϏϡʔ • ਃɺϦϦʔε
ࢀՃMTGҰྫ
ࢀՃMTGҰྫ • iOS ఆྫ MTG
ࢀՃMTGҰྫ • iOS ఆྫ MTG • PJ ఆྫ MTG
ࢀՃMTGҰྫ • iOS ఆྫ MTG • PJ ఆྫ MTG •
(ݸਓࠩ͋Γ·͢)
։ൃڥ • رͷ Mac ͱ֎෦σΟεϓϨΠΛି༩ • ି༩PC͕͍ͭͰަʹͳΓ·ͨ͠ - ຊ࣭Λߟ͑ɺେʹϧʔϧվม
ϝϧΧϦiOSΞϓϦͷߏ • 1.ιʔείʔυ • 2.༻͍ͯ͠ΔϥΠϒϥϦ • 3.ઃܭํ • 4.ςετڥ •
5.σϓϩΠ • 6.ϒϥϯνઓུ
1.ιʔείʔυ
1.ιʔείʔυ • Objective-C : Swift
1.ιʔείʔυ • Objective-C : Swift • 8 : 2
1.ιʔείʔυ • Objective-C : Swift • 8 : 2 •
৽نը໘ɾػೳجຊతʹશͯ Swift
2.༻͍ͯ͠ΔϥΠϒϥϦ • ReactiveCocoa • APIKit • Result • ObjectMapper •
SnapKit
3.ઃܭํ
3.ઃܭํ • MVVM
3.ઃܭํ • MVVM • Storyboard/xib
3.ઃܭํ • MVVM • Storyboard/xib • ABςετͷߟྀ
3.ઃܭํ • MVVM • Storyboard/xib • ABςετͷߟྀ • ઃܭϨϏϡʔ
4.ςετڥ • Unit Test • جຊతͳΞϓϦέʔγϣϯϩδοΫΛΧόʔ • QA • ػೳՃʹର͢Δ݁߹ςετ
• ϦϦʔεલͷΞοϓσʔτʢσάϨʣςετ • CI • ࣾ Mac Ͱ୯ମςετΛ push ຖʹ࣮ߦ
5.σϓϩΠ • Slack bot + Jenkins + fastlane • Beta
൛ͷ • ϦϦʔεϒϥϯνͷ࡞ • iTunes Connect ͷΞοϓϩʔυ
6.ϒϥϯνઓུ • master ϒϥϯν͔Β topic ϒϥϯνΛ࡞ • ίʔυϨϏϡʔޙʹ master Ϛʔδ
• ϦϦʔε͞ΕΔػೳ͕શͯϚʔδ͞ΕͨλΠϛϯάͰ release ϒϥϯνΛ࡞ɺQA։࢝ • QA தʹൃੜͨ͠मਖ਼ release ϒϥϯν PR • ΞϓϦϦϦʔεޙʹ release Λ master ʹϚʔδ
͜Ε͔Β
ϦϦʔεαΠΫϧͷมߋ
ϦϦʔεαΠΫϧͷมߋ • ࠓ·Ͱ •ϦϦʔεʹؚ·ΕΔػೳΛΈͯadhocʹௐ
ϦϦʔεαΠΫϧͷมߋ • ࠓ·Ͱ •ϦϦʔεʹؚ·ΕΔػೳΛΈͯadhocʹௐ • ͜Ε͔Β •ݪଇ2िؒ͝ͱʹϦϦʔε
ιʔείʔυׂ
ιʔείʔυׂ • ࠓ·Ͱ • 1ιʔεϚϧνόΠφϦ • master ϒϥϯνͷίʔυͰ JP/US/UK ͦΕͧΕͷόΠφϦΛ
Ϗϧυ
ιʔείʔυׂ • ࠓ·Ͱ • 1ιʔεϚϧνόΠφϦ • master ϒϥϯνͷίʔυͰ JP/US/UK ͦΕͧΕͷόΠφϦΛ
Ϗϧυ • ͜Ε͔Β • ϚϧνιʔεϚϧνόΠφϦ • JP/US/UK ͦΕͧΕ master ϒϥϯνΛ࡞
ιʔείʔυׂ US ༏ઌ
ଞʹ… • US Ͱͷ Go Bold ͳվળɾػೳՃ • UK ͰͷΞϓϦϦϦʔε
• JP Ͱͷικ Ξος࿈ܞ
·ͱΊ • Δ͜ͱɾΓ͍ͨ͜ͱ ͨ͘͞Μ • ਓ͕Γ͍ͯͳ͍
ืू ιϑτΣΞΤϯδχΞ(Client, iOS) ΛWANTEDʂ https://www.wantedly.com/projects/38352