问题标签 [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.
c# - 为什么缺乏凝聚力的方法(LCOM)包括getter和setter
我正在查看此处显示的 LCOM 指标,
http://www.ndepend.com/Metrics.aspx
所以我们要说几件事,
如果我看这样的课程,
它的得分为 0.94,因为每个 getter 和 setter 都不能访问“所有其他实例字段”。
是这样计算的,
我不理解这个指标,为什么它应该包括 getter 和 setter?getter 和 setter 将始终只访问一个实例字段。
android - 如何修复无法执行 dex 多个 dex 文件定义 lcom google android vending 许可?
在添加 com.google.android.vending.licensing 包之前,我的项目运行良好。我还根据需要添加了所有 libaray。但是我遇到了上述问题,无法执行 dex 多个 dex 文件定义 lcom google android vending 许可。
我用谷歌搜索了很多,但没有找到任何有效的解决方案。
如果有人有想法,请帮助我。
提前致谢.....
android - 谷歌云消息聊天应用程序——无法解析超类
我是 Android 新手,但找到了创建多用户聊天应用程序的绝佳资源。教程在这里: http: //www.appsrox.com/android/tutorials/instachat/1/
或者在这里分叉一个用户存储库: https ://github.com/erikswed/InstaChatX
问题出现了,下载 github 应用程序并解决依赖项后,应用程序编译并在我的 Android 设备上短暂打开,以便我可以看到 spash 页面和主图标,但很快崩溃并出现错误:
我为听起来如此无知而道歉,但这个错误意味着什么?关于如何解决的任何见解?
java - LCOM怎么可能是有理数?
我一直忙于 LCOM 和 eclipse 中的插件 Metrics。其中我必须手动计算一个类的缺乏凝聚力并将其与 Metrics 的结果进行比较。但是这个插件返回 1/3 的 LCOM。LCOM怎么可能是有理数?
因为我被告知的是
P := 不同方法对的数量
和
Q := 相似方法对的数量。
和
这个等式正确吗?还是我的插件出现故障?
java - 如何在 SonarQube 4.2 中获取 LCOM(方法缺乏凝聚力)指标?
SonarQube 4.2版本是否提供 LCOM 指标?
我需要将此指标添加到我的报告中,但我看不到它可用。
请让我知道是否要添加任何特定的 jar 来获取此指标。该指标在 Sonar 3.7 中可用
任何帮助表示赞赏。
谢谢, 斯里坎特
android - 多个dex文件定义Lcom/nineoldandroids/animation/Animator$AnimatorListener
有多个问题可以解决这个问题..但没有一个对我有用..
我正在使用两个库Jazzy view pager和mpAndroidChartLibrary jazzyViewPager 是一个库项目,而 androidChartLibrary 是一个jar 文件
尝试运行项目时出现以下错误
我已经反复清理了项目并重新启动了eclipse和系统..但错误仍然存在
根据建议我做了以下
- 右键单击项目名称
- 选择构建路径 -> 配置构建路径
- 在 Java Build Path 中,转到选项卡 Order and Export
- 取消选中 Android 私有库
在此之后应用程序运行.. 但随后发生以下 dalvikvm 异常
之后发生 Class not found 异常..
我的清单是正确的.. 以前可以工作 b4 添加图表 jar.. 当我删除它时它可以工作..
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 语言。
感谢你们,
java - 通过使用 BCEL 解析 Java 字节码来确定 LCOM4(方法中缺乏内聚)
我已经构建了一个程序,它接受提供的“.class”文件并使用 BCEL 对其进行解析,但是在使用结果对象来确定 LCOM4 值时我有点迷茫。我已经搜索了整个网络,试图找到一个合适的教程,但到目前为止我一直无法(我也阅读了关于 BCEL 的整个 javadoc)。所以我想在这个问题上得到一些帮助,比如一些详细的教程或代码片段,可以帮助我理解如何去做。
ndepend - CPPdepend LCOM 指标查询
我试图使用 CppDepend 获取 LCOM 指标报告。我写了以下查询
但是这个查询只为代码中的头文件提供表值。它不报告 Cpp 文件的值。
请帮忙,因为我是这样做的新手。