`
- 浏览:
30618 次
- 性别:
- 来自:
杭州
-
JDepend traverses Java class file directories and generates design quality metrics for each Java package. JDepend allows you to automatically measure the quality of a design in terms of its extensibility, reusability, and maintainability to manage package dependencies effectively.
it includes some terminology , may be you could see at the JDepend plugin for Eclipse,so I will introduce them before we go on study,that is sweep some obstacle for our undergoing continuous refactoring.
Number of Classes and Interfaces:
The number of concrete and abstract classes (and interfaces) in the package is an indicator of the extensibility of the package.
Afferent Couplings (Ca)
The number of other packages that depend upon classes within the package is an indicator of the package's responsibility.
Efferent Couplings (Ce)
The number of other packages that the classes in the package depend upon is an indicator of the package's independence.
Abstractness (A)
The ratio of the number of abstract classes (and interfaces) in the analyzed package to the total number of classes in the analyzed package.The range for this metric is 0 to 1, with A=0 indicating a completely concrete package and A=1 indicating a completely abstract package.
Instability (I)
The ratio of efferent coupling (Ce) to total coupling (Ce + Ca) such that I = Ce / (Ce + Ca). This metric is an indicator of the package's resilience to change.The range for this metric is 0 to 1, with I=0 indicating a completely stable package and I=1 indicating a completely instable package.
Distance from the Main Sequence (D)
The perpendicular distance of a package from the idealized line A + I = 1. This metric is an indicator of the package's balance between abstractness and stability.
A package squarely on the main sequence is optimally balanced with respect to its abstractness and stability. Ideal packages are either completely abstract and stable (x=0, y=1) or completely concrete and instable (x=1, y=0).
The range for this metric is 0 to 1, with D=0 indicating a package that is coincident with the main sequence and D=1 indicating a package that is as far from the main sequence as possible.
Package Dependency Cycles
Package dependency cycles are reported along with the hierarchical paths of packages participating in package dependency cycles.
when you use JDepend4Eclipsen(JDepend plugin for Eclipse),you will see some abbreviation ,so I will exhibit them:
1.CC - Concrete Class Count
2.AC - Abstract Class (and Interface) Count
3.Ca - Afferent Couplings (Ca)
4.Ce - Efferent Couplings (Ce)
5.A - Abstractness (0-1)
6.I - Instability (0-1)
7.D - Distance from the Main Sequence (0-1)
8.V - Volatility (0-1)
9.Cyclic - If the package contains a dependency cycle
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
Spring in Action CN.001<br>Spring in Action CN.002<br>Spring in Action CN.003<br>Spring in Action CN.004<br>Spring in Action CN.005<br>Spring in Action CN.006<br>Spring in Action CN.007<br>Spring in ...
Spring in Action CN.001<br>Spring in Action CN.002<br>Spring in Action CN.003<br>Spring in Action CN.004<br>Spring in Action CN.005<br>Spring in Action CN.006<br>Spring in Action CN.007<br>Spring in ...
ActiveMQ in Action pdf英文原版加源代码压缩包。 Apache ActiveMQ in Action is a thorough, practical guide to implementing message-oriented systems in Java using ActiveMQ. The book lays out the core of ...
本系列包含的书籍有《Spring in Action》第三版、《Restlet in Action》、《OSGi in Action》以及《MongoDB in Action》。 【描述】中的"Spring in Action.3rd"指的是Spring框架的实战指南,第三版。Spring是Java...
IronPython in Action 无水印pdf版。 IronPython in Action 英文无水印pdf pdf所有页面使用FoxitReader和PDF-XChangeViewer测试都可以打开 本资源转载自网络 IronPython Action
Hadoop In Action 中文第二版 卷二 rar
Rust in Action 是一本面向想要探索 Rust 编程语言世界的中级程序员的书。它适用于可能已经用尽网络上的免费资料但仍想了解更多信息的人。它与 Rust 编程的其他材料不同,因为它还教您有关系统编程的知识。您将能够...
《Lucene in Action 第二版》是一本深入探讨Apache Lucene全文检索库的专业书籍,它在Java开发领域具有很高的权威性。这本书详细介绍了如何利用Lucene进行高效的文本搜索和索引构建,是Java开发者和信息检索爱好者的...
《Spring in Action》是关于Spring框架的一本经典书籍,它深入浅出地介绍了Spring的核心概念和技术。这个"spring in action的jar包"很可能是书中提到的一些必要的库文件,用于配合书中的实例代码运行。这些jar包是...
《R in Action》是一本深度探讨R语言的实用书籍,其中文版的PDF及源代码提供了全面学习和实践R语言的机会。这本书旨在帮助读者不仅理解R语言的基本语法和概念,而且能够利用R进行数据处理、统计分析以及创建高质量的...
《R in Action》是关于R语言的一本经典著作,涵盖了从初学者到高级用户的全面教程。这本书分为两个版本,第一版和第二版,都提供了高清PDF格式,方便读者在线阅读或下载保存。作为一本旨在帮助统计学入门者的书籍,...
Spring in Action, Sixth Edition is a comprehensive guide to Spring’s core features, all explained in Craig Walls’ famously clear style. You’ll put Spring into action as you build a complete ...
《Gradle in Action》是一本深入探讨Gradle构建系统的书籍,中文版的高清PDF版本为开发者提供了方便的学习途径。Gradle是一种强大的、基于Groovy和Java的开源构建自动化工具,适用于各种项目,尤其是大型和复杂的...
《Kotlin in Action》是一本深受开发者欢迎的书籍,它详细介绍了Kotlin编程语言的各个方面。这本书分为中英文两个版本,都有完整的目录结构,方便读者快速定位到所需内容,尤其适合那些希望深入学习Kotlin并将其应用...
Unity in Action Multiplatform game development in C#(2nd) 英文无水印原版pdf 第2版 pdf所有页面使用FoxitReader、PDF-XChangeViewer、SumatraPDF和Firefox测试都可以打开 本资源转载自网络,如有侵权,请联系...
Docker-in-Action.pdf In 2011, I started working at Amazon.com. In that first week my life was changed as I learned how to use their internal build, dependency modeling, and deployment tool- ing. This ...