コード メトリックス (Code Metrics)

値の算出

計算対象によって、次のいずれかの方法により実行できます。

  • ソリューション全体の値の計算
    • メニューの【分析 → ソリューションのコード メトリックスを計算】を選択
    • ソリューション エクスプローラーでソリューション名を右クリックし、[コード メトリックスを計算する]を選択
  • アクティブなプロジェクトの値の計算
    • メニューの【分析 → プロジェクト名 のコード メトリックスを計算】を選択
  • 特定のプロジェクトの値の計算
    • ソリューション エクスプローラーで対象のプロジェクト名を右クリックし、[分析] → [コード メトリックスを計算する]を選択

結果は[コード メトリックスの結果]ウィンドウに表示されます。

How to: Generate Code Metrics Data - Visual Studio 2015 | Microsoft Learn

値の意味

項目 内容
保守容易性指数 (Maintainability Index) コードの相対的な保守容易性。0~100。値が大きいほど保守が容易
サイクロマティック複雑度 (Cyclomatic Complexity) コードの構造上の複雑さ
継承の深さ (Depth of Inheritance) クラス階層構造のルートまでのクラス定義の数
クラス結合 (Class Coupling) 一意のクラスへの結合度。値が大きいほど再利用や保守が困難
コード行 (Lines of Code) コード内の行の概数
Code Metrics Values - Visual Studio 2015 | Microsoft Learn

サイクロマティック複雑度 (cyclomatic complexity / 循環的複雑度)

これが過剰だと、コード分析で「メソッドの実装を複雑にしすぎないでください (Avoid excessive complexity)」としてCA1502で警告されます。

クラス結合 (Class Coupling)

これが過剰だと、コード分析で「クラス結合度を大きくしすぎないでください(Avoid excessive class coupling)」としてCA1506で警告されます。

Microsoft Learnから検索