The Check Hierarchy

レビューで「見るべきポイント」には明確な優先順位があります。変数名のミスより、設計の間違いの方がはるかに重大です。

The Hierarchy of Code Review

graph BT
    S[Style / Formatting]
    C[Comments / Naming]
    T[Tests]
    X[Complexity]
    F[Functionality]
    D[Design / Architecture]
    
    S --> C
    C --> T
    T --> X
    X --> F
    F --> D
    style D fill:#f96,stroke:#333
    style F fill:#fc9,stroke:#333

1. Design & Architecture (設計)

Most Critical:
  • このコードはシステムの正しい場所にありますか?
  • 既存のライブラリを使わず再発明していませんか?
  • 将来の拡張性を完全に殺していませんか?

2. Functionality (機能)

意図通りに動くか? ユーザーにとって益があるか?

  • Edge cases (boundaries, nulls, empty states).
  • Security risks (XSS, SQL Injection).
  • Concurrency issues (Race conditions).

3. Complexity (複雑さ)

"Clever code is hard to maintain."

  • 一目で理解できますか?
  • 「賢すぎる」一行のコードより、明示的な数行のコードのほうが優れています。

4. Naming, Comments & Style (作法)

Least Critical (But annoying):

スタイル(スペース、インデント)は人間が指摘するべきではありません。Linter/Formatterに任せるべきです。これらを人間が指摘し始めると「Nitpick(重箱の隅つつき)」になり、関係が悪化します。