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
akkiee76
October 11, 2022
Technology
0
640
こんなコードレビューは嫌だ
akkiee76
October 11, 2022
Tweet
Share
More Decks by akkiee76
See All by akkiee76
Graph Art with Charts API – Beyond Data Visualization
akkie76
0
130
Meet the Translation API
akkie76
0
370
コードレビューで開発を加速させるAIコードレビュー
akkie76
1
600
Android Target SDK 35 (Android 15) 対応の概要
akkie76
0
5.4k
コードレビューを支援するAI技術の応用
akkie76
5
1.1k
オブジェクト指向コードレビューの新しいアプローチ
akkie76
3
8.9k
Jetpack Compose で Adaptive Layout に対応しよう
akkie76
0
860
Observationではじめる値監視
akkie76
4
4.6k
TextField 表示スタイル変更の 有効活用例 5 選
akkie76
0
690
Other Decks in Technology
See All in Technology
今からでも間に合う! 生成AI「RAG」再入門 / Re-introduction to RAG in Generative AI
hideakiaoyagi
1
170
OpenTelemetry Collector internals
ymotongpoo
5
540
IIWレポートからみるID業界で話題のMCP
fujie
0
210
kotlin-lsp を Emacs で使えるようにしてみた / use kotlin-lsp in Emacs
nabeo
0
150
データ戦略部門 紹介資料
sansan33
PRO
1
3.2k
DB 醬,嗨!哪泥嘎斯基?
line_developers_tw
PRO
0
160
2025/6/21 日本学術会議公開シンポジウム発表資料
keisuke198619
1
250
(新URLに移行しました)FASTと向き合うことで見えた、大規模アジャイルの難しさと楽しさ
wooootack
0
700
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
5
38k
AIにどこまで任せる?実務で使える(かもしれない)AIエージェント設計の考え方
har1101
3
1.1k
堅牢な認証基盤の実現 TypeScriptで代数的データ型を活用する
kakehashi
PRO
2
220
開発効率と信頼性を両立する Ubieのプラットフォームエンジニアリング
teru0x1
0
140
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
60k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
4
140
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
It's Worth the Effort
3n
184
28k
Into the Great Unknown - MozCon
thekraken
39
1.8k
Building a Modern Day E-commerce SEO Strategy
aleyda
41
7.3k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Practical Orchestrator
shlominoach
188
11k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Transcript
〜 生産性を高めるコードレビューのTIPS 〜 こんなコードレビューは嫌だ @akkiee76
自己紹介 Akihiko Sato / 株式会社ラクス Lead Engineer / @akkiee76 SaaS
開発 (Backend, Frontend) / Mobile 開発 (iOS, Android) 上流工程、コードレビュー、チームの課題改善など 読書 / コーヒー / HHKB / 体幹トレーニング
コードレビュー技術について ・オブジェクト指向で類型化するコードレビュー ・レビューガイドラインで技術力を見える化する ・コードレビューの心構え
今日伝えたいこと 「嫌なPR/MR」を避けることで コードレビューの生産性と品質を高めよう!
こんなコードレビューは嫌だ ① changes / diff が多すぎる
レビューで困ること ・考慮漏れが発生するリスクが比例する(品質への懸念) ・レビューに時間がかかる ・手戻りのリスク(修正時のコストが大きい)
原因考察 ・実装スコープが大きい ・不要なファイルがコミットされている(node_moduleなど)
アクションプラン ・実装スコープを細かく分けて、changes を少なくする ・一部の条件分岐のロジックのスコープを分ける ・横展開系開発は、基本方針と横展開を分ける ・ライブラリのアップデートは機能ごとに分ける
こんなコードレビューは嫌だ ② overview の情報が少ない 実装方針が分からない
レビューで困ること ・レビューに時間がかかる ・実装者との意思疎通・コード解釈 ・手戻りのリスク(実装方針の認識相違)
原因考察 ・レビュワーへの配慮 ・設計の認識合わせ不足
アクションプラン ・overview に実装方針を記載する ・必要に応じて実装の背景をコメントで残す ・「FYI 」などのコメント略語を利用する
こんなコードレビューは嫌だ ③ コミットコメントと内容が一致しない
こんなコードレビューは嫌だ ③(実例) ・実装5 ・実装4 ・実装3 ・実装2 ・実装1 commit の粒度が 分からない・・・
レビューで困ること ・全部の chages / diff でレビューを行うことになる ・レビューに時間がかかる ・考慮漏れのリスク(場合によって)
原因考察 ・実装プロセスが明確になっていない(惰性で実装) ・設計の認識合わせ不足
アクションプラン ・commitコメントと内容をなるべく一致させる ・実装プロセスと内容を確立させる(頑張り過ぎない)
こんなコードレビューは嫌だ ④ リファクタリングが含まれている
レビューで困ること ・問題が発生した場合、問題箇所を特定しにくい(品質) ・軽微な修正は許容 ・chages / diff が多くなりがち ・レビューに時間がかかる
原因考察 ・実装プロセスが明確になっていない ・影響範囲の調査不足
アクションプラン ・影響範囲は事前に調査する ・リファクタリングはスコープを分ける ・可能であれば事前にリファクタリングできると GOOD !
こんなコードレビューは嫌だ ⑤ ライブラリのアップデートが含まれている
レビューで困ること ・問題が発生した場合、問題箇所を特定しにくい(品質) ・依存関係により影響範囲が大きくなるケースがある
原因考察 ・影響範囲が少なそうなので、ついでにアップデートした ・IDEで良しなにアップデートされていた ・diff を確認で漏れてしまった
アクションプラン ・ライブラリのアップデートのみをスコープにする ・影響範囲に関わらず機能チェックするとよい ・バージョン開発早期にやると GOOD !
こんなコードレビューは嫌だ5選 ・changes / diff が多すぎる ・overview の情報が少ない ・コミットコメントと内容が一致しない ・リファクタリングが含まれている ・ライブラリのアップデートが含まれている
まとめ 開発を進める上で大切なこと ・PRのスコープを大きくしない ・実装者とレビュアーのコミュニケーションを大切にする ・diff を確認する 明日からのコードレビューでぜひ実践してみよう!
ご清聴ありがとうございました