我正在尝试理解如何根据C#属性来计算初级类结构度量,例如ATFD (访问外部数据)和LCOM (方法中缺乏内聚力)。
如果一个方法访问另一个类的单个属性,这是否意味着该方法的ATFD得分为1?这是否会根据是否有支持私有字段而发生变化?
对于LCOM,当遵循NDepend列出的公式(例如 )时,该属性是计为字段还是计为方法(或两者都计)。
当我们有一个与属性相关的显式私有字段时,这是如何改变的-即,以下类A和C的LCOM差异是什么:
class A {
private int _b;
private int _bx;
public int B { get
我有数以千计的大型标记云数据集;我可以使用一个简单的select/group语句来检索每个集合的加权标记云(例如)
SELECT tag, COUNT( * ) AS weight
FROM tags
WHERE set_id = $set_id
GROUP BY tag
ORDER BY COUNT( * ) DESC
我想知道的是--什么是比较加权标记云的最佳方法,找出其他最相似的集合,考虑到权重(集合内出现的次数),甚至计算一个比较分数,所有这些都在一个比较有效的语句中进行?
我发现网络缺乏关于这一主题的高质量文献,我认为它有点广泛的相关性,并试图抽象我的例子,以保持它的普遍适用性。