nprogram’s blog

気ままに、プログラミングのトピックについて書いていきます

コードレビューの観点まとめ [C++]

今回は、コードレビューの観点まとめについて、記載していきたいと思います。

<コードレビューでプラス事項>

  • 誰がひきついでもわかりやすく、読みやすいコード
  • 変数名や関数名が工夫されていてコメントが少なく読みやすいコード
  • 変数のスコープが必要最低限になっているコード
  • constとconstexprを適切に使って定数と変数が区別されているコード、インスタンス変数を書き換えないメソッド
  • 問題を解くためのデータ構造とアルゴリズムが隠蔽されていて、その2つを変更してもユーザーコードの変更がいらないように設計されているクラス
  • 使用変更や機能拡張が容易なコード
  • assertやStatic_assertが適切に使われており、事前条件を確認し、契約によるプログらイングができているコード
  • 再利用性が高くなるように責務分割されたコード

<コードレビューでマイナス事項>

  • 1つの関数であれもこれもやっている関数。凝縮度が低い関数。
  • ファイル分割されていないプログラム
  • ファイル分割のねらい、基準がはっきりしないプログラム
  • ユーザーにとってインタフェースが使いやすく設計されていないクラス。 (ユーザーコードがきれいに書けないインタフェース)
  • 階層化されておらず、レベルの違う処理を順番に読み出すだけの関数