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
Breaking the Seal: Static Deobfuscation of Compiled V8 JavaScript Bytecode Malware
hshrzd
0
470
【CEDEC2026】次世代デジタルカードゲームのサーバー設計と運用 〜『Shadowverse: Worlds Beyond』の舞台裏~
cygames
PRO
0
840
AIは実装を速くする。では、私たちは何を今作るべきか?-立場を越えてリリースに向き合ったチーム開発の実践 / 20260801 Hiromi Nakaya and Naoki Takahashi
shift_evolve
PRO
3
370
ガバメントクラウドでのランサムウェア対策
techniczna
1
760
OSPN.JPバージョンアップ作業進捗のご報告 / 20260801-osc26kyoto
akkiesoft
0
260
AIがコードを書く時代、人間は何を保証するのか———馬場さんと考える、開発者に求められる新しい責任と価値 - TECH PLAY
netmarkjp
0
1.3k
Retriever と Reranker、結局どうする?
kazuaki
2
670
[しろおび夏祭り2026] チャットするAIから、作業するAIへ - 使われ方の変化と、その裏側で起きていること
kk0n
0
1.6k
Atlassian Cloudサポート業務でのAIエージェント活用事例
smt7174
0
420
MIRU 2026 チュートリアル
keisuke198619
0
810
PLaMoを毎日の開発で使い育てていく
pfn
PRO
0
180
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
19k
Featured
See All Featured
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.7k
Statistics for Hackers
jakevdp
799
230k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
560
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
420
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Google's AI Overviews - The New Search
badams
0
1.1k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
New Earth Scene 8
popppiees
3
2.5k
Building Applications with DynamoDB
mza
96
7.2k
Utilizing Notion as your number one productivity tool
mfonobong
4
500
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
230
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