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開発とコードレビュー
Search
ninjinkun
June 24, 2014
Programming
26
5.4k
中規模iOS開発とコードレビュー
フリマアプリFrilのリニューアルを題材に、iOS開発でのコードレビュー事例を紹介します
ninjinkun
June 24, 2014
Tweet
Share
More Decks by ninjinkun
See All by ninjinkun
買収から2ヶ月でシステム統合した話
ninjinkun
0
100
Designer's and Engineer's Thinking Styles
ninjinkun
0
220
Launchable Webinar テストを効率化して生産性を上げる方法
ninjinkun
2
560
ディープリンクの 設計と実装 - iOSDC2017
ninjinkun
18
10k
スマートフォンアプリ開発における共創的な開発チーム
ninjinkun
61
19k
ReSwiftでアプリの状態管理 / Reactive Swift Meetup
ninjinkun
9
17k
フリルのアプリ開発今昔物語
ninjinkun
3
2.2k
プロトタイピング合宿によるデザインリニューアル
ninjinkun
1
3.1k
デザイナーが仕事をしやすいアプリエンジニアを考える
ninjinkun
4
670
Other Decks in Programming
See All in Programming
速いWebフレームワークを作る
yusukebe
2
330
rage against annotate_predecessor
junk0612
0
140
兎に角、コードレビュー
mitohato14
0
160
MCPで実現するAIエージェント駆動のNext.jsアプリデバッグ手法
nyatinte
7
990
TROCCO×dbtで実現する人にもAIにもやさしいデータ基盤
nealle
0
390
AI時代のドメイン駆動設計-DDD実践におけるAI活用のあり方 / ddd-in-ai-era
minodriven
25
9.4k
AI OCR API on Lambdaを Datadogで可視化してみた
nealle
0
220
KessokuでDIでもgoroutineを活用する / Go Connect #6
mazrean
0
120
旅行プランAIエージェント開発の裏側
ippo012
1
530
為你自己學 Python - 冷知識篇
eddie
1
310
FindyにおけるTakumi活用と脆弱性管理のこれから
rvirus0817
0
240
TDD 実践ミニトーク
contour_gara
1
260
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1032
460k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
The Cost Of JavaScript in 2023
addyosmani
53
8.9k
Scaling GitHub
holman
463
140k
The Invisible Side of Design
smashingmag
301
51k
Music & Morning Musume
bryan
46
6.8k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
4 Signs Your Business is Dying
shpigford
184
22k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Six Lessons from altMBA
skipperchong
28
4k
Transcript
தنJ04։ൃͱ ίʔυϨϏϡʔ OJOKJOLVO
ϑϦϚΞϓϦ'SJM w גࣜձࣾ'BCMJD w ঁੑ͚ϑϦϚΞϓϦ'SJMͷ ։ൃɾӡӦ w J04"OESPJE
'SJMωΠςΟϒԽ w 5JUBOJVNΛ0CKFDUJWF$ʹϦϓϨʔε w +4ສߦˠ0CK$ສߦऑ w *TTVFPWFS w ։ൃϲ݄ ࣗϲ݄͔ΒKPJO
ωΠςΟϒԽͷత w 5JUBOJVNͷݶք w ࠷৽J04ͷΩϟονΞοϓ w 6*Λͬͱ࡞ΓࠐΈ͍ͨ w $PDPB1PET͍͍ͨ w
J04ͷσβΠϯ࠷దԽ
՝ w ෳࡶͳ༷ w 4/4ͱചങͷػೳ͕ೖ͍ͬͯΔ w αʔόʔͱΫϥΠΞϯτʹϩδοΫ͕ࢄ w J04ωΠςΟϒ։ൃܦݧ͕ઙ͍ϝϯόʔ w
ͦ͜ͰίʔυϨϏϡʔ͕༗ޮͩͬͨͷͰࣄྫΛ հ͠·͢
ίʔυϨϏϡʔʹ ͍ͭͯ
ίʔυϨϏϡʔ w ίʔυΛॻ͍ͨΒඞͣଞऀʹݟͯΒ͏ w -(5. -PPLT(PPEUP.F ͕ग़Δ·ͰNFSHF͠ ͳ͍
ίʔυϨϏϡʔͷత w ࣭ͷ্ w ଐਓੑͷഉআ w ڭҭ
࣭ͷ্ w ݟΒΕΔ͜ͱΛҙࣝ͢Δ w खൈ͖͕ͳ͘ͳΔ w ίʔυͷ࣭͕νʔϜͰ౷Ұ͞ΕΔ w γϯλοΫεɺ໋໊ w
εʔύʔΤϯδχΞ͚͕ͩཧղͰ͖ͯҙຯͳ͍ w ઃܭ͕ٞͰ͖Δ
ଐਓੑͷഉআ w ͋ͷਓ͔͠Θ͔Βͳ͍͔Βʙ͕ͳͤ͘Δ w తɺલఏ͕ڞ༗Ͱ͖Δ w ίʔυ͚ͩಡΜͰαʔϏεͷઃܭΘ͔Βͳ͍ w ٳՋ͕औΓ͘͢ͳΔ
ڭҭ w ॳֶऀͷϨϕϧΛҰؾʹҾ্͖͛Δ͜ͱ͕Ͱ͖Δ w J04Ͱ͜͏͢Δ͜ͱ͕ଟ͍Ͱ͢ɺͳͥͳΒʙ w ҉ΛݴޠԽ͢ΔػձʹͳΔ
ϨϏϡʔͰ ࢦఠ͍ͯ͠Δ͜ͱ
"VUP-BZPVUʹͰ͖ͳ͍͔ w "VUP-BZPVUԽͰ͖ͦ͏ͳΒͰ͖ΔݶΓ"VUP-BZPVU ʹ͢Δ w ίʔυͰ࣮͞Ε͍ͯΔ߹ɺͳͥίʔυͰ࣮ ͔࣭ͨ͢͠Δ w ͪΌΜͱཧ༝͕͋Εྑ͍
6*"QQFBSBODFʹͰ͖ͳ͍͔ w ελΠϧͷࢦఆ6*"QQFBSBODFʹ͢Δํ͕ྑ ͍ w σβΠφʔ͕࿔Γ͍͢
Πϯν w ΠϯνܾΊଧͪͰ͕ϋʔυίʔσΟϯά͞Ε ͍ͯΔͱ͓͔͘͠ͳΔ w ։ൃͷܦݧ͕ཷ·ͬͯ͘Δͱɺ࠷ॳ͔Βߟྀͯ͠ ࣮͢Δบ͕ͭ͘ w ͜ͷลͷରԠΛߟ͑ͯ"VUP-BZPVUͰ࣮͢Δ͜ͱ ଟ͍
ண৴εςʔλεόʔ w ݁ߏ׳Ε͍ͯͯΕ͕ͪ w ։ൃॳظखΛൈ͘͜ͱ͋Δ w γϛϡϨʔλͰDPNNBOE :Λ ԡͤࢼͤΔ
॥ࢀর͍ͯ͠ͳ͍͔ w XFBLͷ͚Εଟ͍ w ੩తղੳͰݟ͚ͭͯ͘Εͳ͍͜ͱ͕͋Δ
ྐྵରԠ͍ͯ͠Δ͔ w lzΈ͍ͨͳදهʹͳΔΑ w ৄࡉl/4%BUF'PSNBUUFSྐྵzͰ͙͙Ε w ୭ͰҰ·Δʂ w ͜ΕܦݧͰճආ͢ΔΑ͏ʹͳΔ w
J1IPOFΛྐྵઃఆͰ༻͢Δ͓͢͢Ί
6*7JFX$POUSPMMFS͕ް͗͢ͳ͍͔ w ઃܭͷมߋ͕ඞཁʹͳΔͷͰɺࢦఠ͕͍͠ w %BUB4PVSDFͷΓग़͠$IJME7JFX$POUSPMMFS ͷׂࢦఠ͍͢͠ w ͱΓ͋͑ͣͭͷ$POUSPMMFSͷංେԽΛ͙ޮՌ ͋Δ
Τϥʔॲཧͷ࣮࿙Εͳ͍͔ w Ε͕ͪ w ϑΟʔυόοΫͷํ๏ʢΞϥʔτͰग़͢ͷ͔Ӡʑʣ ϓϩδΣΫτ࣍ୈ
ಉظతͳ*0 w )551͍͍ͩͨؾΛ͚ͭΔΜ͚ͩͲɺϩʔΧϧͷ ϑΝΠϧΞΫηεಉظతʹ͕ͪ͠ w େྔͷϑΝΠϧɺେ͖ͳϑΝΠϧʹΞΫηε͢Δ෦ ͱ͔ w ྫ͑ΩϟογϡϑΝΠϧͷআ w
Ϣʔβʔʹؾ͔ͮΕͳ͍͘Β͍ͷϒϩοΫͳΒผʹ ྑ͍
)551ϦΫΤετͷΩϟϯηϧ ߦΘΕ͍ͯΔ͔ w 7JFX$POUSPMMFSΛด͡Δ࣌ͱ͔ʹ w खΛൈ͘߹ଟʑ͋Γʜ
υΩϡϝϯτͳͲΛҾ༻͢Δ w ΞοϓϧͷυΩϡϝϯτɺϒϩάΤϯτϦɺ 4UBDL0WFSqPXɺ2JJUBΤϯτϦͳͲΛҾ༻͢Δ w ίʔσΟϯάʹ͍ͭͯ$PEF$PNQMFUFΛҾ༻͢ Δ͜ͱ͕ଟ͍
Ξχϝʔγϣϯͷࢦఠ w ผ࣮Λ࡞ͬͯఏҊ
-5ωλʹͰ͖ͦ͏ͱ͔ࢦఠ͢Δ w ଞͷਓʹधཁ͕͋ΔҰൠతͳ͔Αɺͱ͍͏ ͷίʔυϨϏϡʔͩͱݟ͍͑͢
'BCMJDͱϨϏϡʔ
ଟ༷ੑYϨϏϡʔڧ͍νʔϜ w ϝϯόʔ͝ͱʹ͕ࣝภ͍ͬͯͨ w J04ͷ͕ࣝ͋ΔΤϯδχΞ w 'SJMͷ༷ʹৄ͍͠ΤϯδχΞ w ޓ͍ͷࣝΛϨϏϡʔΛ௨ͯ͠ަ͢Δ͜ͱͰ νʔϜ͕ڧԽ͞Εͨ
σβΠφʔ͕ίʔυΛॻ͘ w σβΠφʔࢯʮϨϏϡʔ͕͋Δ͔Β҆৺ͯ͠ίʔυ͕ॻ ͚Δʯ w 6*"QQFBSBODF 4UPSZ#PBSEͳͲͰσβΠφʔ͕࿔Γ ͍͢Α͏ʹ͓͍ͯͨ͠Βࣗવͱॻ͍ͯͨ w σβΠφʔ͕ίʔυΛॻ͍ͨํ͕ૣ͍߹͕ଟʑ͋Δ
w ͲΜͲΜॻ͍ͯ΄͍͠ w ͔ͬ͠ΓϨϏϡʔ͠·͢
·ͱΊ w 'BCMJDͰͷίʔυϨϏϡʔࣄྫʹ͍ͭͯհ͠·ͨ͠ w J04։ൃͰίʔυϨϏϡʔͰνʔϜͷੜ࢈ੑΛ ্͛Α͏
࣭ٙԠ w ϖΞϓϩΒͳ͔ͬͨͷ͔ w Βͳ͔ͬͨɻಛʹཧ༝ແ͍͕ɺࠓޙಋೖ͠ ͯΈ͍ͨ