コード品質 レッスン1
コードレビューの基本
コードレビューの目的と、建設的なフィードバックを行う・受け取るための基本的な心構えを学ぶ
コードレビューはなぜ必要なのか
コードレビューとは、ある人が書いたコードの変更を、別の人が実装した後・マージする前に確認するプロセスです。 単なる「あら探し」ではなく、品質保証と知識共有を同時に実現する仕組みとして機能します。
品質面の効果
- • バグやエッジケースの見落としを本番前に発見できる
- • セキュリティ上のリスクを複数人の目でチェックできる
- • 設計上の一貫性が保たれる
チーム面の効果
- • コードベース全体の知識がチームに広がる
- • 経験の浅いメンバーの学習機会になる
- • 特定の人しか分からない「属人化」を防げる
何を見るか: レビューの観点
限られた時間で効果的にレビューするには、優先順位をつけて観点を絞ることが大切です。 細かいスタイルの指摘に時間を使いすぎて、設計上の問題を見落とすのは本末転倒です。
1
正確性
仕様通りに動くか。境界値やエラー時の挙動は考慮されているか。
2
設計・保守性
責任が適切に分割されているか。将来の変更に耐えられる構造か。
3
セキュリティ
入力値の検証、認証・認可、機密情報の取り扱いに問題はないか。
4
テスト
振る舞いを保証するテストが追加・更新されているか。
フィードバックの伝え方
レビューコメントの書き方次第で、同じ指摘でも受け取り方が大きく変わります。 「人」ではなく「コード」に対してコメントすることを意識しましょう。
避けたい書き方
「これは間違っています」「なぜこう書いたんですか?」
望ましい書き方
「このケースでnullが渡るとエラーになりそうです。早期returnを追加するとどうでしょうか?」
ポイント
指摘には理由を添え、可能であれば代替案まで提示すると、著者が対応しやすくなります。
レビューを受ける側の心構え
レビューは著者にとっても学びの機会です。指摘を人格への攻撃と捉えず、 コードをより良くするための材料として受け止めることが大切です。
- • 指摘の意図が分からなければ、防御的にならず質問する
- • 意見が分かれた場合は、口頭やペアプロで背景をすり合わせる
- • 対応した箇所には返信し、対応しない場合は理由を明記する
ポイント
- • コードレビューの目的は品質保証と知識共有の両立
- • 観点は正確性・設計・セキュリティ・テストの順に優先度をつける
- • コメントは「コード」に向け、理由と代替案をセットで伝える
- • レビューを受ける側も学びの機会として前向きに向き合う
確認クイズ
1 / 3コードレビューの目的として最も適切なものはどれか?