ソーシャルゲーム業界で何年かコードレビューをやってきた中で、 「よく指摘するポイント」 や 「間違えやすい箇所」 などが少し見えてきましたのでご紹介できたらと思います。
内容
- コードレビューでどこから見ていいかわからない方。
- コードレビューでバグの見逃しが多い方。
注意
- 個人的主観でポイントをご紹介しています
- 紹介している内容がチェックできていれば問題ないという趣旨ではありません
レビューポイント
- 既存変数名の利用
- 意図的であれば問題ないのですが、気づかず同じ変数名をつけていませんか?
- ループ処理
- ループ内で同じDB取得や計算をおこなっていませんか?
- 取得するデータ、または加工するデータは最小限にしましょう
- 最終的に10件のデータしか表示しないのに100件のデータ取得をおこなったり、100件分の付属情報を計算したりするのは非効率です
- DBがMaster-Slave構成をとっている場合は、適切に選択できているか
- 不必要にMasterを利用しすぎていないでしょうか?
- Slaveのレプリケーション遅延は考慮できているでしょうか?
- エラーハンドリング
- DBやCacheなどのコネクションエラーや更新/追加処理が中途半端に進んでいないかなどエラーを適切に扱えているか?
- 境界判定
- 0, false, null などを混在して扱っていないか?
- エラー時の挙動確認
- エラー時の処理に不具合がないか?
- 取得値のチェック
- get や post で受け渡している値を適切にチェックしているか?
- エラー出力
- 適切なエラーが出力されるか?(実際にエラーが起こった際に問題箇所の特定が容易か?)
- 不必要なコード削除
- 可読性やメンテナンス性が下がるため、使用していないコードは極力削除しましょう
※現在もコードレビューをする機会は多いため不定期で更新いたします。