问题标签 [lcom]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
8499 浏览

c# - 为什么缺乏凝聚力的方法(LCOM)包括getter和setter

我正在查看此处显示的 LCOM 指标,

http://www.ndepend.com/Metrics.aspx

所以我们要说几件事,

如果我看这样的课程,

它的得分为 0.94,因为每个 getter 和 setter 都不能访问“所有其他实例字段”。

是这样计算的,

我不理解这个指标,为什么它应该包括 getter 和 setter?getter 和 setter 将始终只访问一个实例字段。

0 投票
1 回答
1279 浏览

android - 如何修复无法执行 dex 多个 dex 文件定义 lcom google android vending 许可?

在添加 com.google.android.vending.licensing 包之前,我的项目运行良好。我还根据需要添加了所有 libaray。但是我遇到了上述问题,无法执行 dex 多个 dex 文件定义 lcom google android vending 许可。

我用谷歌搜索了很多,但没有找到任何有效的解决方案。

如果有人有想法,请帮助我。

提前致谢.....

0 投票
0 回答
504 浏览

android - 谷歌云消息聊​​天应用程序——无法解析超类

我是 Android 新手,但找到了创建多用户聊天应用程序的绝佳资源。教程在这里: http: //www.appsrox.com/android/tutorials/instachat/1/

或者在这里分叉一个用户存储库: https ://github.com/erikswed/InstaChatX

问题出现了,下载 github 应用程序并解决依赖项后,应用程序编译并在我的 Android 设备上短暂打开,以便我可以看到 spash 页面和主图标,但很快崩溃并出现错误:

在此处输入图像描述

我为听起来如此无知而道歉,但这个错误意味着什么?关于如何解决的任何见解?

0 投票
1 回答
188 浏览

java - LCOM怎么可能是有理数?

我一直忙于 LCOM 和 eclipse 中的插件 Metrics。其中我必须手动计算一个类的缺乏凝聚力并将其与 Metrics 的结果进行比较。但是这个插件返回 1/3 的 LCOM。LCOM怎么可能是有理数?

因为我被告知的是

P := 不同方法对的数量

Q := 相似方法对的数量。

这个等式正确吗?还是我的插件出现故障?

0 投票
2 回答
3224 浏览

java - 如何在 SonarQube 4.2 中获取 LCOM(方法缺乏凝聚力)指标?

SonarQube 4.2版本是否提供 LCOM 指标?

我需要将此指标添加到我的报告中,但我看不到它可用。

请让我知道是否要添加任何特定的 jar 来获取此指标。该指标在 Sonar 3.7 中可用

任何帮助表示赞赏。

谢谢, 斯里坎特

0 投票
1 回答
1806 浏览

android - 多个dex文件定义Lcom/nineoldandroids/animation/Animator$AnimatorListener

有多个问题可以解决这个问题..但没有一个对我有用..

我正在使用两个库Jazzy view pagermpAndroidChartLibrary jazzyViewPager 是一个库项目,而 androidChartLibrary 是一个jar 文件

尝试运行项目时出现以下错误

我已经反复清理了项目并重新启动了eclipse和系统..但错误仍然存​​在

根据建议我做了以下

  • 右键单击项目名称
  • 选择构建路径 -> 配置构建路径
  • 在 Java Build Path 中,转到选项卡 Order and Export
  • 取消选中 Android 私有库

在此之后应用程序运行.. 但随后发生以下 dalvikvm 异常

之后发生 Class not found 异常..

我的清单是正确的.. 以前可以工作 b4 添加图表 jar.. 当我删除它时它可以工作..

0 投票
1 回答
1965 浏览

algorithm - LCOM4 询问计算方式

最近,我在计算 LCOM4 的方式中遇到了一个语义问题,LCOM4 是一种用于确定类的方法和属性如何内聚的度量。

介绍

LCOM4 是“计算缺乏凝聚力的第 4 种方法”,并已由 Hitz 和 Montazeri 描述(http://www.isys.uni-klu.ac.at/PDF/1995-0043-MHBM.pdf ) 并且是目前定义一个类拥有多少责任的最佳方式。

我会尽量不使用特定的开发语言,因为我的问题是针对所有 OOP 语言的。

让我基本上用默认算法向不知道的人解释它是如何工作的:

这个类有两个流程:

  • 属性 a 由 f1() 和 f2() 共享
  • 属性 b 由 f3() 共享

所以 Foo 的 LCOM4 是 2。

例如,让我们将函数 f2() 更改为也共享属性 b。

现在这个类只有一个流程:

  • 属性 a 和 b 由 f1()、f2() 和 f3() 共享。

这意味着 Foo 的 LCOM4 现在是 1。

LCOM4 = 0 或 LCOM4 = 1 表示该类没有或只有 1 个责任,这是每个开发人员必须为他们的类所希望的,因为他们尊重S OLID 良好实践的S。

您可以在此处找到更多带有图表的信息:http: //www.aivosto.com/project/help/pm-oo-cohesion.html#LCOM4

我的问题

假设你写了一个这样的类:

...当然,在做的时候new self,我创建了一个使用Bar声明的方法构建的新 Bar 实例。

根据 Hitz 和 Montazeri 的作品,我班的 LCOM4 是什么Bar

我使用的很多度量工具都说 LCOM4=2,但对我来说,这个类只有 1 个责任,所以它的 LCOM4 必须是 1。此外,即使它不是很明确,两种方法build()Bar()必须属于同一个函数图就像build()调用一样Bar()(嗯,我知道,它正在调用另一个实例,但即使它不是同一个对象,它也是同一个类)。

你对此有何看法?

有没有人知道如何处理这类课程?(我读了很多 Hitz 和 Montazeri 的文件,但我可能错过了一些)

如果没有答案,我们是否可以改进 LCOM4 的计算方式,使其更接近一个类的责任数?

顺便说一句,我的情况是在 PHP 中,但我认为这个问题也涉及所有其他 OOP 语言。

感谢你们,

0 投票
1 回答
624 浏览

java - 通过使用 BCEL 解析 Java 字节码来确定 LCOM4(方法中缺乏内聚)

我已经构建了一个程序,它接受提供的“.class”文件并使用 BCEL 对其进行解析,但是在使用结果对象来确定 LCOM4 值时我有点迷茫。我已经搜索了整个网络,试图找到一个合适的教程,但到目前为止我一直无法(我也阅读了关于 BCEL 的整个 javadoc)。所以我想在这个问题上得到一些帮助,比如一些详细的教程或代码片段,可以帮助我理解如何去做。

0 投票
1 回答
47 浏览

ndepend - CPPdepend LCOM 指标查询

我试图使用 CppDepend 获取 LCOM 指标报告。我写了以下查询

但是这个查询只为代码中的头文件提供表值。它不报告 Cpp 文件的值。

请帮忙,因为我是这样做的新手。