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
Let's learn code review
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
RioFujimon
April 25, 2024
Programming
1.3k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Let's learn code review
春和の候!若手エンジニアふんわりLT Night!_vol4で発表した資料
RioFujimon
April 25, 2024
More Decks by RioFujimon
See All by RioFujimon
Foundation Models を 活用するための Tips
riofujimon
1
370
2025.01.17_Sansan × DMM.swift
riofujimon
3
1.1k
実践 Realtime API 〜入力として音声データを扱う〜
riofujimon
1
110
Realtime API 入門
riofujimon
0
380
Other Decks in Programming
See All in Programming
Contextとはなにか
chiroruxx
1
390
継続モナドとリアクティブプログラミング
yukikurage
1
230
20260623_Loop Engineeringで自分の分身の問い合わせBotを作る
ryugen04
0
110
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
5.6k
才能?センス?知らん、 続けたもん勝ちだ。-- 結婚・出産・癌を越えてなお、私がプロダクトを創り続ける理由
16bitidol
2
680
はてなアカウント基盤 State of the Union
cockscomb
1
1.3k
これからAgentCoreを触る方へトレンドはGatewayです
har1101
6
460
Signal Forms: Details & Live Coding @enterJS 2026 in Mannheim
manfredsteyer
PRO
0
210
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
350
ランチタイムLT会3周年!ランチタイムLT会を3年間続けられたお話
y0hgi
1
130
トークンをケチるな、設計しろ:GitHub Copilotを賢く使うコンテキスト戦略
ochtum
0
280
Agentic UI
manfredsteyer
PRO
0
220
Featured
See All Featured
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
250
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
72
40k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
The Language of Interfaces
destraynor
162
27k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
400
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
330
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
550
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
270
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
220
Embracing the Ebb and Flow
colly
88
5.1k
Making Projects Easy
brettharned
120
6.7k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
310
Transcript
Let’s learn code review 藤門 莉生(Rio Fujimon) review suggestion
自己紹介 2 - 名前:藤門 莉生(Rio Fujimon) - 所属:Sansan株式会社 - 📱
23卒 iOSエンジニア - 🍎 Eight(iOS版)を開発 - SNS:@RioFujimon
コードレビュー上手くできてますか? review ask
コードレビューでありがちな課題感 4 - 🤯 他人の書いたコードレベルが高くて、 理解が難しい - 🤷 どのような観点でレビューすれば、 いいのか分からない
- 🚨 コードレビューで気をつける点は、 あるのか? - 🫥 雰囲気でコードレビュー
プログラミングは勉強するけど、 コードレビューの勉強は後回し(しない)
📚コードレビューも学習しよう! review suggestion
コードは書く時間より読む時間の方が長い review imo
コードレビュー学習の参考文献 ① Google’s Code Review Guidelines
コードレビュー学習の参考文献 ② Google Style Guides
コードレビュー学習の参考文献 ② Google Style Guides
🔍 Google’s Code Review Guidelinesの要点 review must
コードレビューの目的 12 コードベース全体の健全性が 時間と共に向上することを確認すること
開発者の進捗とコード健全性の調和 13 - 開発者の進捗とコード健全性の調和 - 開発者は進捗を遂げなければならないが、 コードベースの健全性も維持する - レビュアーはコード健全性を確保し、 開発者の進捗を妨げない
基本原則 14 - CL(Change List)がシステムのコード健全性を 向上させるならば、承認する - 完璧なコードを求めず、継続的な改善を重視 - コードレビューは開発者の成長と教育にも役立つ
重要な機会
レビュー原則 15 - 意見や個人の好みよりも、技術的な事実とデータを優先 - コードスタイルはスタイルガイドに従う - ソフトウェア設計は、原則に基づいて評価されるべき
議論紛争の解決 16 - レビュアーガイドラインの内容に基づいてみる - コードレビューコメントだけでなく、直接会議や オンライン会議も活用(議事録は必ず取る) - エスカレーションを活用 -
テクニカルリードやテクニカルマネージャーの 意見に助けてもらう
🔍 Code Review 観点 review must
コードレビュー観点 ① 18 1. コードが適切に設計されているか? 2. 機能がコードのユーザーにとって良いものであるか? 3. UIの変更が適切で見栄えが良いか? 4.
並行プログラミングが安全に行われているか? 5. コードが必要以上に複雑でないか? 6. 開発者が将来必要になるかもしれないが、 現時点では必要性が分からないものを実装していないか?
コードレビュー観点 ② 19 7. コードに適切な単体テストが含まれているか? 8. テストが適切に設計されているか? 9. 開発者がすべてのものに明確な名前を付けているか? 10.
コメントが明確で有用であり、 主になぜそのようになっているかを説明しているか? 11. コードが適切に文書化されているか? 12. コードがスタイルガイドに準拠しているか?
コードの不明点は開発者に積極的に質問しよう review imo
質問により得られるメリット 21 コードレビューには、開発者に言語、フレームワーク、または一般的なソフトウェア設 計原則について新しいことを教える重要な機能があります。開発者が新しいことを学 ぶのに役立つコメントを残すことは常に良いことです。知識を共有することは、時間と ともにシステムのコード健全性を向上させる一部です。 Google’s Code Review Guidelines(Mentoring)
できる部分から少しずつ実践していこう! review suggestion