学校向けのプロジェクトがあります。ここで、すべてのメトリクス CK (Chidamber Kemerer メトリクス) のレポートを作成する必要があります。レポートは、これらすべての指標の表のようにする必要があります。質問は、それが生成するこのレポートを Ndepend から作成する方法です。これは私が探しているものではありません。
助けて、それを行う方法を教えてください...おそらくいくつかのヒント、ドキュメント、またはこれは非常に重要です...
学校向けのプロジェクトがあります。ここで、すべてのメトリクス CK (Chidamber Kemerer メトリクス) のレポートを作成する必要があります。レポートは、これらすべての指標の表のようにする必要があります。質問は、それが生成するこのレポートを Ndepend から作成する方法です。これは私が探しているものではありません。
助けて、それを行う方法を教えてください...おそらくいくつかのヒント、ドキュメント、またはこれは非常に重要です...
わかりました。これらの Chidamber Kemerer メトリクスについて話している場合、LINQ クエリ (CQLinq) でコード クエリとルールを作成するNDepend機能がすべてのニーズに対応します。例えば:
クラスごとの WMC加重メソッド
warnif count > 0
from t in Application.Types
let methods = t.Methods
.Where(m => !m.IsPropertyGetter &&
!m.IsPropertySetter &&
!m.IsConstructor)
where methods.Count() > 20
orderby methods.Count() descending
select new { t, methods }
DIT継承ツリーの深さ
warnif count > 0
from t in JustMyCode.Types
where t.IsClass
let baseClasses = t.BaseClasses.ExceptThirdParty()
where baseClasses.Count() >= 5
select new { t, baseClasses,
// The metric value DepthOfInheritance takes account
// of third-party base classes
t.DepthOfInheritance
}
NOC子供の数
from t in Types
where t.IsClass
let childClasses = t.DerivedTypes
where childClasses.Count() > 0
orderby childClasses.Count() descending
select new { t, childClasses }
オブジェクト クラス間のCBOカップリング
from t in Application.Types
let typesUsed = t.TypesUsed.ExceptThirdParty()
orderby typesUsed.Count() descending
select new { t, typesUsed }
等々...