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
180k
116
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
コードレビューの話
新卒エンジニア向けにコードレビューを「する」話をしました。
http://hisaichi5518.hatenablog.jp/entry/2014/10/29/165721
hisaichi5518
October 29, 2014
More Decks by hisaichi5518
See All by hisaichi5518
技術力あげたい
hisaichi5518
4
4.9k
Dartにおける静的解析 / FlutterKaigi 2022
hisaichi5518
0
2.3k
ソフトウェアエンジニアが品質保証を学んでわかったこと / What software engineers have learned about quality assurance
hisaichi5518
6
12k
10X と Flutter / 10X with Flutter
hisaichi5518
0
2.4k
ひさいちとの1on1
hisaichi5518
0
2.7k
しあわせ推進委員会 / Shiawase Promotion Committee
hisaichi5518
0
1.3k
2017-03-23
hisaichi5518
0
3.8k
Pepabo Tech Conference 7
hisaichi5518
1
1.2k
かんばんやりたい
hisaichi5518
0
1.1k
Other Decks in Technology
See All in Technology
1000⼈規模のClaude Enterprise運⽤を「Oktaのグループ」と「Slack」に集約する
sansantech
PRO
0
390
[potatotips #96] Give Your AI Agent the Flutter Playbook
korodroid
0
170
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
24k
あなたの知らないバージョン命名規則
sat
PRO
2
760
Data Hubグループ 紹介資料
sansan33
PRO
0
3.2k
AIエージェントのためのデータ設計
daiz21
0
250
Windows の互換機能 - 古いプログラムはなぜ動作できるのか
murachiakira
PRO
0
110
AI開発に用いられるHPC技術について
gpuunite_official
0
290
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
12
85k
:syncing_time:
sksat
2
760
コミュニティから始まった農業IoTとの7年間 ——人との関わりが教えてくれたこと
peacemaker07
0
110
dbt と Snowflake と tag
kevinrobot34
1
250
Featured
See All Featured
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
430
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
660
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
180
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
280
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
430
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
250
We Have a Design System, Now What?
morganepeng
55
8.3k
Code Review Best Practice
trishagee
74
20k
Designing for Timeless Needs
cassininazir
1
450
AI: The stuff that nobody shows you
jnunemaker
PRO
9
940
Technical Leadership for Architectural Decision Making
baasie
3
530
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