sonar documentation显示以下内容作为LCOM4 = 1的重构代码。但在我看来它应该是2,因为getFullName
和{{1}之间没有凝聚力}} 即可。我错过了什么?
getFullAddress
答案 0 :(得分:2)
好像你发现了文档问题!根据Freddy Mallet的说法,这不是LCOM4重构的一个很好的例子,并将被修复:
http://sonar.15.n6.nabble.com/Question-about-LCOM4-td5009876.html
一般来说,有一些数据结构不适合LCOM4算法,这在制定重构决策时很重要。 POJO和模板方法模式的具体实现是我发现属于这一类的两个例子。
在这个特定情况下,上面链接中的Mallet解释了这个特定bean被授予LCOM4 = 1,因为getFullAddress被认为是bean访问者,并且bean访问者被排除在LCOM4评分之外。