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
hisaichi5518
October 29, 2014
Technology
116
180k
コードレビューの話
新卒エンジニア向けにコードレビューを「する」話をしました。
http://hisaichi5518.hatenablog.jp/entry/2014/10/29/165721
hisaichi5518
October 29, 2014
Tweet
Share
More Decks by hisaichi5518
See All by hisaichi5518
技術力あげたい
hisaichi5518
4
4.5k
Dartにおける静的解析 / FlutterKaigi 2022
hisaichi5518
0
2.2k
ソフトウェアエンジニアが品質保証を学んでわかったこと / What software engineers have learned about quality assurance
hisaichi5518
6
10k
10X と Flutter / 10X with Flutter
hisaichi5518
0
2.2k
ひさいちとの1on1
hisaichi5518
0
2.6k
しあわせ推進委員会 / Shiawase Promotion Committee
hisaichi5518
0
1.2k
2017-03-23
hisaichi5518
0
3.7k
Pepabo Tech Conference 7
hisaichi5518
1
1.1k
かんばんやりたい
hisaichi5518
0
1.1k
Other Decks in Technology
See All in Technology
Rustから学ぶ 非同期処理の仕組み
skanehira
1
140
Firestore → Spanner 移行 を成功させた段階的移行プロセス
athug
1
480
実践!カスタムインストラクション&スラッシュコマンド
puku0x
0
410
250905 大吉祥寺.pm 2025 前夜祭 「プログラミングに出会って20年、『今』が1番楽しい」
msykd
PRO
1
930
共有と分離 - Compose Multiplatform "本番導入" の設計指針
error96num
2
570
AI開発ツールCreateがAnythingになったよ
tendasato
0
130
CDK CLIで使ってたあの機能、CDK Toolkit Libraryではどうやるの?
smt7174
4
180
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
4
570
AI時代を生き抜くエンジニアキャリアの築き方 (AI-Native 時代、エンジニアという道は 「最大の挑戦の場」となる) / Building an Engineering Career to Thrive in the Age of AI (In the AI-Native Era, the Path of Engineering Becomes the Ultimate Arena of Challenge)
jeongjaesoon
0
140
COVESA VSSによる車両データモデルの標準化とAWS IoT FleetWiseの活用
osawa
1
290
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
110
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
9
73k
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
It's Worth the Effort
3n
187
28k
Optimizing for Happiness
mojombo
379
70k
The Pragmatic Product Professional
lauravandoore
36
6.9k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
520
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
BBQ
matthewcrist
89
9.8k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Transcript
(.01FQBCP *OD IJTBJDIJ ৽ଔݚम ίʔυϨϏϡʔͷ
ࣗݾհ ͻ͍ͪ͞
લ৬Ͱͬͯͨࣄ ιʔγϟϧήʔϜͷ"1*࡞ͬͯͨ ϦʔυΤϯδχΞ ϓϩδΣΫτͷϓϧϦΫɺશ෦ίʔυϨϏϡʔͯ͠ ͨ ଞͷਓ
ͻ͍͕ͪ͞0,͢ΕϚʔδΈ͍ͨͳɻ େมͩͬͨʜʜʜʜʜ ίʔυϨϏϡʔʹ͍ͭͯߟ͑Δ͜ͱ͕ଟ͔ͬͨɻ
ࠓ͞ͳ͍ࣄ ϨϏϡʔͯ͠Β͏ͱ͖ͷ ίʔυϨϏϡʔཷ·Δͱ͔ӡ༻ ͯ͠Δͱग़ͯ͘Δ ίʔυϨϏϡʔಋೖ ίʔυϨϏϡʔΛʮ͢ΔʯΛ͠·͢ɻ
ίʔυϨϏϡʔͱ ίʔυϨϏϡʔʢӳ$PEFSFWJFXʣ ɺιϑτΣΞ։ൃఔͰݟա͝ ͞ΕͨޡΓΛݕग़ɾमਖ਼͢ΔͨΊʹ ιʔείʔυͷମܥతͳݕࠪʢࠪಡʣ Λߦ͏͜ͱɻ
ίʔυϨϏϡʔͱ ίʔυϨϏϡʔʢӳ$PEFSFWJFXʣ ɺιϑτΣΞ։ൃఔͰݟա͝ ͞ΕͨޡΓΛݕग़ɾमਖ਼͢ΔͨΊʹ ιʔείʔυͷମܥతͳݕࠪʢࠪಡʣ Λߦ͏͜ͱɻ
ຊʹ ͦΕ͚ͩʁ
ίʔυϨϏϡʔͷత ػցతʹൃݟग़དྷͳ͍ޡΓͷൃݟ ٕज़ྗ্ ଐਓੑഉআ
͜ͷͭͷதͰ ৽ଔࢯ͕ʮࠓʯٻΊΒΕΔࣄ
ʮࠓʯɺ৽ଔࢯͨͪʹظ͞ΕΔͰ͋Ζ͏͜ͱ ٕज़ྗ্ ଐਓੑͷഉআ
ίʔυϨϏϡʔͷత ػցతʹൃݟग़དྷͳ͍ޡΓͷൃݟ ٕज़ྗ্ ଐਓੑഉআ ͍ͭ͜ʁʁʁ
ϨϕϧͱϨϕϧ Կࣄʹஈ֊͕͋Δ Ϩϕϧͱʹ͚ͯɺ·ͣϨϕϧ Λग़དྷΔΑ͏ʹ͢Δɻ
֤తͷΰʔϧ ٕज़ྗ্ ίʔυ͕ͳͥͦ͏ͳ͍ͬͯΔͷ͔ཧղग़ དྷΔ ଐਓੑͷഉআ ίʔυ͕ͳͥͦ͏ͳ͍ͬͯΔͷ͔ཧղग़
དྷΔ
·Δͬͱ·ͱΊͯ ίʔυΛཧղ͢Δ
Ϩϕϧ ίʔυΛཧղ͢Δ
ίʔυΛཧղ͢Δͬͯ Ͳ͏͢Ε͑͑Μʜ ͍͠Θʜʜʜ
ϨϕϧΛୡ͢ΔͨΊͷ ίʔυϨϏϡʔʹ͓͍ͯ Δ͜ͱ͚ͭͩ
Θ͔Βͳ͍ࣄΛฉ͘
ίʔυ͕ཧղͰ͖ΔΑ͏ʹͳΔʹ ͳΜͰ͜͏ͳ͍ͬͯΔͷ͔ʁΛߟ ͑ͳ͕ΒίʔυΛಡΉ Θ͔Βͳ͍ͱ͜Ζ͕͋ΔͱΉ ΜͩΒࣗͰΘ͔Βͳ ͍ͱஅͯ͠ฉ͘ɻ
ίʔυ͕ཧղͰ͖ΔΑ͏ʹͳΔʹ ʮͳΜͰ͜͜ʹϝιουॻ͍ͯΔΜͩΖʯ ʮͳΜͰ"͡Όͳͯ͘#ͬͯॻ͖ํͳΜͩΖʁʯ ʮͳΜͰ͜͜Ͱ"ͯ͠ΔΜͩΖʁʯ ʮͳΜͰʜʜʜʜʜʯ
ʮͳΜͰͳΜʜʜʜʜʯ ʮͳΜͰʙʙʙʙʙʙʯ
ͳΜͰɾΉɾฉ͘ Λ܁Γฦ͍ͯ͠Δͱ Ϩϕϧ͕ग़དྷΔΑ͏ʹͳΔ
ͳΜͰɾΉɾฉ͘ Λ܁Γฦ͍ͯ͠Δͱ ίʔυ͕ཧղग़དྷΔΑ͏ʹͳΔ
Ϩϕϧୡ
ίʔυϨϏϡʔͷత ػցతʹൃݟग़དྷͳ͍ޡΓͷൃݟ ٕज़ྗ্ ଐਓੑഉআ ࣍ɺ͍ۙকདྷٻΊΒΕΔɺίΠπʂʂʂ̍̍
Ϩϕϧ ػցతʹൃݟग़དྷͳ͍ޡΓͷ ൃݟ
ػցతʹൃݟग़དྷΔͷ 42-ͷ/ ίʔυͷϑΥʔϚοτ
42-/ ϧʔϓͷதͰ42-ൃߦ͠·͘Γ ճϧʔϓͨ͠Β42-͕ ճୟ͔ΕΔʢ˔ʆЏ˔ʣ 3BJMTʹɺCVMMFUͱ͍͏ͷ͕͋Δ
CVMMFUɺ/ Λൃݟग़དྷΔ
ίʔυϑΥʔϚοτ SVCPDPQͱ͔ΛͬͯɺελΠϧʹ ҧͨ͠ΒKFOLJOT͕͚͜Δͱ͔͢ Δɻ
None
ػցతʹΘ͔Δͷ ػցʹָͤͯΛ͢Δ
ػցతʹൃݟग़དྷͳ͍PSग़དྷΔ͕খ͍͠ ηΩϡϦςΟ 42- ϨʔείϯσΟγϣϯ ༷ͱίʔυͷໃ६
࣮ߦ ઃܭ Θ͔Γ͢͞ "ͱ#ɺͲͪΒ͕φ͍ʁ
ηΩϡϦςΟ 944 $43' 42-ΠϯδΣΫγϣϯ ৄ͘͠
42- ΠϯσοΫεΘΕͯͳ͍ ΠϯσοΫεແବʹషͬͯΔ
ϨʔείϯσΟγϣϯ ಉ࣌ʹ࣮ߦ͞ΕͨΒ͏ΜͨΒ͔Μͨ Βʂʂʂʂʂʂʂʂʂʂʂʂʂ
༷ͱίʔυͷໃ६ ͦͦ͜ͷίʔυɺ༷ʹ߹ͬͯ ͳ͍݅ ςετҙຯͳ͍݅
࣮ߦ ͬͪ͜ͷํ͕ૣ͘Ͷʁʁʁʁ ඞͣϕϯνϚʔΫऔΔ Ωϟογϡͨ͠ํ͕͍͍͔ɺΈͨ ͍ͳͱ͔͢Δ
ઃܭ ίϯτϩʔϥʔʹϩδοΫΛॻ͘ ͖Ͱͳ͍͏ΜͨΒ͔ΜͨΒ ίʔυϨϏϡʔͷ࣌Ͱ͜ͷ͕ग़ ΔΑ͏Ͱ͋ΕɺίʔυΛॻ͘લʹ ૬ஊ͢ΔΑ͏ʹ͢Δɻ
Θ͔Γ͢͞ "ͱ#ɺൺΔͱ"ͷํ͕Θ͔Γ͍͢ʂʂ̍ WJNWT&NBDTͷΑ͏ͳͨͩͷԥΓ߹͍ʹͳ ΔՄೳੑ͕͋Δ ͕͑ͳ͍ͷʹؔͯ͠ɺର໘Ͱ͢ ʙͯ͠ෆໟͱࢥͬͨΒෆໟͰ͢Ͷͬ
ͯݴͬͯऴΘΒͤΔɻ
"ͱ#ɺͲ͕ͬͪφ͍ʁ ࠓɺͬͪ͜ͷ΄͏͕φ͍ͥʂΈ ͍ͨͳͷ݁ߏ͋Δ άάͬͯݟ͚ͭͨͷ͕Φϫίϯʹͳͬ ͯΔՄೳੑʂʂʂʂʂ
ʢ˔ʆЏʅ˔ʣ
Ϩϕϧ ϝονϟϜζΠ
͜ΕΒ͕ग़དྷΔΑ͏ʹͳΔʹ ɺ༷ʑͳࣝɾܦݧ͕ඞཁ
ͦͯ͠ɺେલఏͱͯ͠ ଞͷਓͷίʔυΛݟͯ ཧղग़དྷΔඞཁ͋Δɻ
ͦΜͳ͜ΜͳͰ
ίʔυϨϏϡʔͷతΛཧղͯ͠ ࠓɺΔ͖͜ͱཧղग़དྷɺ ͦͷΓํཧղग़དྷͨɻ ͦͷ࣍ʹΔ͜ͱΘ͔ͬͨʂʂ ͏ίʔυϨϏϡʔᘳʂʂ
Ͱͳ͍ͷͰ͢ʜ
ୈೋ෦ ίʔυϦʔσΟϯάฤ
ίʔυΛಡΉɻ τςϞɺϜζΧγΠ
࠷ߴͷಡΈํΛ ڭ͑ͯ΄͍͠ʂ
Զ͕Γ͍ͨ Θʂʂʂʂʂ ʂʂʂʂʂʂ ʂʂʂʂʂʂ
ίʔυϨϏϡʔ࣌ͷಡΈํ ʙͻ͍ͪ͞ฤʙ
ݸͷεςοϓ
ղܾ͍ͨ͠Λཧղ͢Δ ϓϧϦΫͷαϚϦʔΛಡΉ Կ͕͍͔ͨ͠ ԿͷͨΊʹ͢Δͷ͔
ςετ͕௨ͬͯΔ͔֬ೝ ςετ௨ͬͯͳ͍ͱجຊతʹݟͳ ͍
ίϛοτϩάͱมߋ͞ΕͨίʔυΛશ෦ݟΔ ҰͭҰͭݟΔ ίϛοτϩάʹͳΜͰͦ͏͔ͨ͠ॻ͔ΕͯΔࣄ ͕͋ΔͷͰίϛοτϩάΛݟΔɻ ؾʹͳΔͱ͜Ζɾ͕ٙ͋ͬͨΒϝϞ͓ͯ͘͠ ݟͨॠؒʹίϝϯτͨ͘͠ͳΔͷͰɺखݩͰUJH
ΛͬͯݟΔɻ
ಈ͔ͯ͠ΈΔ ίϛοτϩάΛશ෦ோΊऴΘͬͨΒɺ ؾʹͳͬͨͱ͜Ζͱ͔खݩͰಈ͔͠ ͯΈΔ
'JMFT$IBOHFEΛோΊΔ શମͷ%J⒎ΛݟΔɻ εςοϓͰϝϞͨ͠ͱ͜Ζͷཧ
'JMFT$IBOHFEͷͱ͜ΖʹίϝϯτΛॻ͘ ϝϞͨ͠ͱ͜ΖΛ(JUIVCʹίϝϯτ ͍ͯ͘͠
͜ͷݸͷεςοϓ ຖճΔඞཁ͋Δʁ
ͳ͍Ͱ͢
͜ͷΓํϕετͰͳ͍͠ɺ ϕετଘࡏ͠ͳ͍ɻ ࣗͳΓͷΓํΛ୳͠ଓ͚Δ͔͠ͳ͍ɻ
ͦΜͳ͜ΜͳͰ
ུ ͏ίʔυϨϏϡʔ ᘳʂʂ
Ͱͳ͍ͷͰ͢ʜ
ୈࡾ෦ ͑ํׂ͕ฤ
͜ͷεϥΠυΛ࡞Δʹͨͬͯɺ લ৬ޙഐ !.BDP@5BTV ʹ νʔϜʹδϣΠϯͨ࣌͠ͷ ίʔυϨϏϡʔʹ͍ͭͯฉ͍ͯΈͨɻ
ҙ͍ࣝͯͨ͜͠ͱʁ ʮͳΜͰ͜͏ͯ͠ΔΜͩʁʯ͓ͬͯ ͬͨΒ·ͣฉ͘ ϨϏϡʔͷॻ͖ํ
ҙ͍ࣝͯͨ͜͠ͱʁ ʮͳΜͰ͜͏ͯ͠ΔΜͩʁʯ͓ͬͯ ͬͨΒ·ͣฉ͘ ϨϏϡʔͷॻ͖ํ
ԿނɺϨϏϡʔͷॻ͖ํΛ ҙࣝ͢Δඞཁ͕͋Δͷ͔ʁ
ࠔͬͨ͜ͱʁ ઌഐ͕ාͯ͘ࢥͬͨ͜ͱ͕ॻ͚ͳ͍ ࣗྗྔແ͍ͷʹͦΜͳϨϏϡʔ ͰҒͦ͏ͳ͜ͱݴ͍͍ͬͯͷ͔
ਓ͕͍ؒΔͱ΄΅࣮֬ʹਓؒؔͷ ग़ͯ͘Δɻ ਓؒؔͷɺޡղ͔Β࢝·Δ͜ ͱ͕ଟ͍ͱࢥ͍ͬͯΔɻ إΛ߹ΘͤͣʹߦΘΕΔίʔυϨϏϡʔ ɺͦͷޡղΛੜΈग़͢ॴʹͳΔՄ ೳੑ͕͋Δͱࢥ͍ͬͯͯɺϨϏϡʔ ͷॻ͖ํΛؾΛ͚ͭΔ͜ͱͰɺͦ͏͍ͬ ͨޡղΛੜ·ΕΔͷΛগͳ͘͢Δ͖ɻ
ਓؒؔͰΈͨ͘ͳ͍ͷͰɺ ޡղ͞Εͳ͍Α͏ʹ͢Δɻ
͑ํΛஸೡʹ͢Δ
ཧ༝Λॻ͘
ཧ༝Λॻ͘ ʮ΄͛΄͛ɺΑ͘ͳ͍ؾ͕͠·͢ʯ ʮ΄͛΄͛"ͳͷͰɺΑ͘ͳ͍ؾ ͕͠·͢ʯ
๙ΊΔ
๙ΊΔ ʮ΄͛΄͛"ͳͷͰɺΑ͘ͳ͍ؾ ͕͠·͢ʯ ʮ͜ͷίʔυՄѪ͍ΜͰ͕͢ɺ΄͛ ΄͛"ͳͷͰɺΑ͘ͳ͍ؾ͕͠· ͢ʯ
ఏҊ͢Δ
ఏҊ͢Δ ʮ΄͛΄͛"ͳͷͰɺΑ͘ͳ͍ؾ ͕͠·͢ʯ ʮ΄͛΄͛"ͳͷͰɺΑ͘ͳ͍ؾ ͕͠·͢ɻ;͕;͕ͷํ͕͍͍ͱ ࢥͬͨΜͰ͕͢ɺͲ͏Ͱ͠ΐ͏ʯ
ఏҊʹཧ༝Λॻ͘
ఏҊʹཧ༝Λॻ͘ ʮ΄͛΄͛"ͳͷͰɺΑ͘ͳ͍ؾ͕͠ ·͢ɻ;͕;͕ͷํ͕͍͍ͱࢥͬͨΜͰ ͕͢ɺͲ͏Ͱ͠ΐ͏ʯ ʮ΄͛΄͛"ͳͷͰɺΑ͘ͳ͍ؾ͕͠ ·͢ɻ;͕;͕ͷํ͕ղফ͞Εɺ͔ͭ#ͳ ͷͰྑ͍ͱࢥͬͨΜͰ͕͢ɺͲ͏Ͱ͠ΐ ͏ʯ
ͳΜͳΒ ίʔυͰࣔ͢
ͳΜͳΒίʔυͰࣔ͢ ʮ΄͛΄͛"ͳͷͰɺΑ͘ͳ͍ؾ͕͠· ͢ɻ;͕;͕ͷํ͕ղফ͞Εɺ͔ͭ#ͳͷ Ͱྑ͍ͱࢥͬͨΜͰ͕͢ɺͲ͏Ͱ͠ΐ͏ʯ ʮ΄͛΄͛"ͳͷͰɺΑ͘ͳ͍ؾ͕͠· ͢ɻ;͕;͕ͷํ͕ղফ͞Εɺ͔ͭ#ͳͷ Ͱྑ͍ͱࢥͬͨΜͰ͕͢ɺͲ͏Ͱ͠ΐ͏ʁ ͜͏͍͏ײ͡Ͱ͢ʯ
╹◡╹ ŷţƄţŝƄƂƁŦʙ
େৎʂʂʂʂʂʂ ஈ֊͕͋Δʂʂʂʂ
͜ͷɺ͖ͬͨ͞͠Ϩϕϧ͕ग़དྷ Δਓୡ͕Δ͖͜ͱɻ ୭ʹͰग़དྷΔɺ؆୯ͳͷ͕͋Δʂʂʂ
σδλϧจࣈʹ ײ͕͜Γʹ͍͘ ͱ͍͏
ର໘Ͱ͍ͯ͠Δͱإ͕ݟ͑Δɻ ද͕Θ͔Δ ޡղʹܨ͕Γʹ͍͘
จࣈͷΈͩͱ إ͕ͳ͍ ද͕ͳ͍ ޡղʹܨ͕Γ͍͢
None
ͲͪΒ͕ΊͰ͍ͨ ͱײ͡Δʁ
ʮ͍͍ͱࢥ͍·͢ʯ
-(5.-PPLT(PPE5P.F
ͲͪΒಉ͡ҙຯͳͷʹɺ શ͘ΊͰ͕ͨ͞ҧ͏ɻ
None
ͬͱ ΊͰͨ͘Ͱ͖Δ
ΊͰͨ͘͢Δͱ
ײׂ૿ʂʂʂ
None
None
ϨϏϡʔͰྑͦ͞͏ ͱࢥͬͨΒ͏ɻ
None
None
None
None
MHUNJO IUUQMHUNJO
UJRBWDPN IUUQUJRBWDPN
͓ͬ͞Μ-(5.͔Γͩͱ ͭΒ͍ͷͰɺඒঁ-(5. IUUQIJTBJDIJIBUFOBCMPHKQFOUSZ
&NPKJ
None
,BPNPKJ
None
None
ͦΜͳ͜ΜͳͰ
ུ ͏ίʔυϨϏϡʔ ᘳʂʂ
ͱࠓࢥͬͱ ͜ʂʂʂ
ࠓͨ͜͠ͱ ίʔυϨϏϡʔͷత ࠓΔ͖͜ͱɾͦͷΓํ ࣍ʹΔ͜ͱ ϨϏϡʔͷํʢͻ͍ͪ͞ฤʣ
ϨϏϡʔ͑ํׂ͕ ײࡾׂ૿͠ͰΊͰͨ͞Ξοϓ
ࢀߟॻ੶63-ਓؒ !.BDP@5BTV ͑ํׂ͕ IUUQTHJTUHJUIVCDPN.BDP5BTV DEEECBGFEC IUUQIJUPEFIBUFOBCMPHDPNFOUSZ
IUUQTIJCBZVIBUFOBCMPHDPNFOUSZ IUUQIBLPCFIBUFOBCMPHDPNFOUSZ