Visual Studio 2010のコードメトリクスを試してみた
ソースコードの品質向上のための効果的で効率的なコードレビュー
のスライドを見て感銘を受けたのでコードメトリクスを試したくなりました
http://www.tsunematsu.cc/2008/01/12/2136/
を経由して
ソースコードのメトリクス(品質測定)を行うツール - ふにゃるん
にたどり着き
Visual Studioの機能としてコードメトリクスが組み込まれているらしいと
会社のVS2010にもありました
使い方は簡単でメニューから選ぶだけ
こんな感じで余計なファイルも作られることもなく
通知ウィンドウに結果が表示されます
フィルター機能やエクスポート機能も付いて便利そうです
画像は保守容易性インデックスの0〜30でフィルタリングしてあります
評価項目
○保守容易性インデックス
総合評価。100点満点で値が高いほうが良い
○サイクロマティック数
分岐やループなどのネストの数。低いほうが良い
ネストが深いと見難いですからね
○継承の深さ
これはそのまま。低いほうが良い
標準コントロールを継承してるオブジェクトだと高い値が出ます
○クラス結合
どれだけ他のクラスを参照しているか。低いほうが良い
オブジェクト指向で言う所のモジュール結合度みたいなもんでしょうか
○コード行
コード内のステップ数。低いほうが良い
以上の項目を、モジュール毎、関数毎に評価してくれます
感想
最初に紹介したスライドでもある通り、初心者向けの教育的な評価手法っぽいです
大まかにみてさらっと掬っただけというか、これはできて当たり前というか…
その割にはインデックス20切ってる恥ずかしいコードもありますが
これはソースの長さに拠る所が多いかと
データベースの正規化の話でもありますが、
下手に分割しない方が良かったりするのでそこはケースバイケースでしょう
プログラミングの合間に気軽に評価できるので
今後のプログラミングの参考にしたいと思います