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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
ninjinkun
June 24, 2014
Programming
5.4k
26
Share
中規模iOS開発とコードレビュー
フリマアプリFrilのリニューアルを題材に、iOS開発でのコードレビュー事例を紹介します
ninjinkun
June 24, 2014
More Decks by ninjinkun
See All by ninjinkun
買収から2ヶ月でシステム統合した話
ninjinkun
0
160
Designer's and Engineer's Thinking Styles
ninjinkun
0
290
Launchable Webinar テストを効率化して生産性を上げる方法
ninjinkun
2
600
ディープリンクの 設計と実装 - iOSDC2017
ninjinkun
18
10k
スマートフォンアプリ開発における共創的な開発チーム
ninjinkun
61
19k
ReSwiftでアプリの状態管理 / Reactive Swift Meetup
ninjinkun
9
17k
フリルのアプリ開発今昔物語
ninjinkun
3
2.3k
プロトタイピング合宿によるデザインリニューアル
ninjinkun
1
3.1k
デザイナーが仕事をしやすいアプリエンジニアを考える
ninjinkun
4
730
Other Decks in Programming
See All in Programming
AI時代のPhpStorm最新事情 #phpcon_odawara
yusuke
0
190
10年分の技術的負債、完済へ ― Claude Code主導のAI駆動開発でスポーツブルを丸ごとリプレイスした話
takuya_houshima
0
2.6k
The Monolith Strikes Back: Why AI Agents ❤️ Rails Monoliths
serradura
0
340
Claude Code × Gemini × Ebitengine ゲーム制作素人WebエンジニアがGoでゲームを作った話
webzawa
0
150
瑠璃の宝石に学ぶ技術の声の聴き方 / 【劇場版】アニメから得た学びを発表会2026 #エンジニアニメ
mazrean
0
270
TiDBのアーキテクチャから学ぶ分散システム入門 〜MySQL互換のNewSQLは何を解決するのか〜 / tidb-architecture-study
dznbk
1
180
Offline should be the norm: building local-first apps with CRDTs & Kotlin Multiplatform
renaudmathieu
0
220
YJITとZJITにはイカなる違いがあるのか?
nakiym
0
240
SREに優しいTerraform構成 modulesとstateの組み方
hiyanger
2
150
ハーネスエンジニアリングにどう向き合うか 〜ルールファイルを超えて開発プロセスを設計する〜 / How to approach harness engineering
rkaga
24
14k
Lightning-Fast Method Calls with Ruby 4.1 ZJIT / RubyKaigi 2026
k0kubun
3
1.1k
Cache-moi si tu peux : patterns et pièges du cache en production - Devoxx France 2026 - Conférence
slecache
0
280
Featured
See All Featured
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
170
Reality Check: Gamification 10 Years Later
codingconduct
0
2.1k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
170
Paper Plane
katiecoart
PRO
1
49k
Believing is Seeing
oripsolob
1
110
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
Practical Orchestrator
shlominoach
191
11k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
190
Balancing Empowerment & Direction
lara
6
1.1k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
150
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.9k
Agile that works and the tools we love
rasmusluckow
331
21k
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 Βͳ͔ͬͨɻಛʹཧ༝ແ͍͕ɺࠓޙಋೖ͠ ͯΈ͍ͨ