我一直忙于lcom和eclipse中的插件指标。其中,我必须手动计算一类缺乏凝聚力并将其与指标结果进行比较。但是此插件返回1/3的LCOM。LCOM如何成为一个理性的数字?
因为我被告知
p:=不同方法的数量对
和
q:=类似方法对的数量。
和
if P>Q
then LCOM = P - Q
otherwise LCOM = 0
这个方程式正确吗?还是我的插件故障?
有几个可以使用的LCOM指标,因此我可以假设您没有指该插件使用的指标。例如,这些是 ndependepent 使用的指标,两个都是有理数:
- lcom = 1 - sum(mf)/m*f
- lcom_hs =(m - sum(mf)/f)(M-1)
其中:
- m是方法的数量(计数静态和实例方法,以及构造函数);
- f是实例变量的数量;
- MF是访问特定实例字段的方法数量;
- sum(MF)是类的MF总和。
(来源:ndepper.com)