`
wang9907
  • 浏览: 9608 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

(转)11款Java工具:源代码优化与分析

 
阅读更多

本文介绍一些Java源代码优化和分析工具,以帮助我们优化代码以及检查源代码中的潜在问题。

      本文英文原文来源:http://java.dzone.com/articles/java-tools-source-code

 

      1. PMD

  网址:http://pmd.sourceforge.net/

  PMD能够扫描Java 源代码,查找类似以下的潜在问题:

  可能的bug - try/catch/finally/switch语句中返回空值;死代码 - 未使用的局部变量、参数、私有方法;不理想的代码 - 使用String/StringBuffer;过于复杂的表达式 - 没有必要使用if语句、while循环可以代替for循环;重复代码 - 复制/粘贴的代码引发的bug。

  PMD集成了JDeveloper, Eclipse, JEdit, JBuilder, BlueJ, CodeGuide, NetBeans/Sun Java Studio Enterprise/Creator, IntelliJ IDEA, TextPad, Maven, Ant, Gel, JCreator, 以及 Emacs。

 

  2. FindBugs

  网址:http://findbugs.sourceforge.net

  FindBugs是一个使用静态方法来查找Java代码漏洞的程序。

 

  3.Clover

  网址:http://www.cenqua.com/clover/

  这个插件允许你在不离开IDE的环境条件下来衡量和检测覆盖效果。该插件通过使用Apache Ant、Maven来无缝集成其它项目,可以通过命令行界面和API系统轻松集成到传统的构建系统中。

  该插件的特性:

  支持快速、准确、可配置的方法、语句等;支持丰富的报告格式:HTML、PDF、XML、以及Swing GUI;精确控制源代码级别的过滤;支持代码覆盖以及其它指标的图表;完全兼容JUnit 3.x & 4.x, TestNG, JTiger以及其它的测试框架。

 

  4. Macker

  网址:http://innig.net/macker/

  Macker是一个适用于Java开发人员用来检查架构规则的工具。你可以定制一个适合特定项目架构的规则文件,也可以为您的代码撰写通用的规则说明。

 

  5. EMMA

  网址:http://emma.sourceforge.net/

  EMMA支持的覆盖类型:方法、类等。输出报告的格式为:文本、HTML、XML。输出报告可以高亮显示某些项目。EMMA不需要访问源代码,可以在输入类中减少调试的信息。

 

  6. XRadar

  网址:http://xradar.sourceforge.net/

  XRadar是一个开放的、为代码生成可扩展报告的工具。目前支持基于Java的所有系统。批量处理的框架可以用来生成HTML/SVG系统的报告。Xradar可以估量代码的大小、复杂性以及代码的重复性、依赖性等。

 

  7. Hammurapi

  网址:http://www.hammurapi.com

  Hammurapi是一款执行Java程序代码的自动检测工具。提供的实例中含有282条Hammurapi代码规则,提供了120多个Java类,这款所谓的检测工具,可以从三个级别来检测代码是否违背了编码标准。

 

  8. Relief

  网址:http://www.workingfrog.org/

  Relif是一款设计工具,为Java项目提供了崭新的面貌。我们可以充分发挥自己的能力来处理真实的实例通过检测大小、形状、关系等来简化处理过程。

 

  9. Hudson

  网址:http://hudson-ci.org/

  Hudson 是一个持续集成工具,使用Java编写,运行在Servlet容器中,比如Apache Tomcat或者或GlassFish应用服务器。它支持SCM工具,包括CVS、Subversion、Git和ClearCase。它可以执行Apache Ant、基于Apache Maven的项目、以及任意的shell脚本和Windows批处理命令。

 

  10. Cobertura

  网址:http://cobertura.sourceforge.net/

  Cobertura是一个免费的基于jcoverage的Java工具,用于计算代码被测试访问的百分比,它可以被用来确定Java程序中的缺少部分的测试覆盖率。

 

  11. SonarSource

  网址:http://www.sonarsource.org/

  Sonar是一个管理代码质量的开放平台。因此,它涵盖了代码质量的7个方面:架构与设计、重复、单元测试、复杂性、潜在错误、编码规则、评论。

  英文原文:http://java.dzone.com/articles/java-tools-source-code

分享到:
评论

相关推荐

    C++代码转java工具

    标题“C++代码转Java工具”暗示了一个软件或服务的存在,它的功能是自动化C++源代码到Java源代码的转换。这种工具通常通过分析C++的语法结构,然后生成相应的Java代码来工作。然而,需要注意的是,由于C++和Java的...

    java源代码查看工具.zip

    Java源代码查看工具是一款专为Java开发者设计的实用软件,它允许用户查看并理解已编译的Java类文件(.class)的源代码,即使原始的.java文件不可用。这款工具支持多种Java编译器产生的.class文件,确保了广泛的兼容...

    Java转C++代码工具 J2C

    Java转C++代码工具J2C是一个专门用于将Java源代码转换为等效C++代码的工具。这个工具对于那些需要在不支持Java或者需要利用C++特定性能特性的环境中迁移Java项目的人来说非常有用。在深入探讨J2C之前,我们先理解...

    java转js工具

    - 这种工具通常通过解析Java源代码,理解其语法结构,然后根据JavaScript的语法规则生成等效的代码。这个过程涉及到符号表管理、类型转换、方法调用的处理等多个复杂步骤。 - 关键点包括处理Java的类和对象系统、...

    java画图工具的源代码

    Java画图工具源代码分析 Java作为一种面向对象的编程语言,具有丰富的图形用户界面(GUI)库,使得开发画图工具变得相对简单。本篇将深入解析标题为"java画图工具的源代码"的项目,它展示了如何利用Java语言构建一...

    java词法分析器源代码

    总之,这个"java词法分析器源代码"提供了一个研究和学习词法分析技术的实例,对于想要了解编译原理或开发相关工具的Java开发者来说,这是一个宝贵的学习资源。通过阅读和分析"SynEdit"的源代码,我们可以了解到如何...

    BBS论坛源代码JAVA版

    【标题】"BBS论坛源代码JAVA版"是基于JAVA编程语言实现的一款在线讨论平台的源码,旨在提供一个互动交流的空间,用户可以在这里发布话题、回复他人、进行讨论。这款源码对于学习JAVA Web开发,尤其是对BBS系统设计感...

    Java词法分析源代码

    通过深入研究这个Java词法分析源代码,你可以增强对编译器设计的理解,这对于开发自己的解析工具或者优化现有代码的解析性能都是非常有价值的。同时,这也有助于提高你对Java语法的深刻认识,因为你会从底层看到语言...

    C,C++,Java源代码分析器

    在计算机科学领域,源代码分析器是一种至关重要的工具,它能帮助开发者理解和优化他们的程序。本文将深入探讨一个针对C、C++和Java语言的源代码分析器,虽然其用户界面为DOS形式且全英文,但这并不妨碍我们挖掘其...

    Java代码直接转化成smail代码工具(完整项目)

    2. **Java2Smali工具**:这个工具的核心功能就是将Java源代码转换成Smali代码,便于分析和修改。它可能是一个命令行工具,接收Java源文件作为输入,输出对应的Smali文件。使用该工具,开发者可以深入理解代码执行的...

    java项目开发10例源代码

    7. **异常处理与日志记录**:源代码中会展示如何正确地捕获和处理异常,以及使用日志工具(如log4j)记录程序运行状态,这对调试和问题定位至关重要。 8. **单元测试与持续集成**:如果项目包含测试代码,那么你...

    五子棋java全套源代码

    【五子棋Java全套源代码】是一个基于Java Swing开发的桌面应用程序,专为五子棋爱好者设计。在这款游戏中,玩家可以与计算机进行对弈,体验经典的五子棋玩法。Swing是Java的一个图形用户界面(GUI)工具包,它允许...

    java jdk源代码

    Java JDK源代码是Java开发工具包的原始代码,对于任何想要深入理解Java语言工作原理的开发者来说,它都是一个无价的学习资源。JDK包含了Java运行环境、编译器、类库以及各种工具,它的源代码揭示了Java平台的内部...

    java源码:Java源代码检索系统 JCite.zip

    通过阅读和研究源代码,开发者不仅可以了解如何实现一个源码检索系统,还可以从中学习到软件设计、优化以及与其他工具集成的最佳实践。 总之,Java源码检索系统JCite是一个实用的工具,它展示了如何在Java环境中...

    C转java工具

    C转Java工具通过解析C语言源代码,将其转换为Java语言的等价表达,从而实现了两者之间的桥梁。 该工具的基本工作原理是:首先,它会读取C源代码文件,然后对C语言的语法结构进行分析,包括变量声明、函数定义、循环...

    java版本词法、语法分析器以及三地址代码生成实验源代码

    这种代码形式便于进行控制流分析和数据流分析,为代码优化提供便利。在Java实现的三地址代码生成过程中,我们需要根据语法规则将AST转换为三地址代码,同时处理如赋值、条件判断、循环等复杂结构。 实验报告通常会...

    java核心技术源代码

    Java核心技术源代码是Java开发人员深入理解平台工作原理和实现机制的重要参考资料。这些源代码涵盖了Java的核心组件,包括类库、API以及JVM的关键部分。本篇将详细探讨Java核心技术的各个方面,帮助开发者提升对Java...

    java手机游戏源代码

    通过分析源代码,你可以了解到如何使用Java的基本语法,如变量、数据类型、控制结构(if语句、for循环等)、类与对象等。 2. 游戏框架:在Java手机游戏中,开发者通常会使用特定的游戏框架来简化开发过程。例如,...

    Java程序设计语言源代码

    Java程序设计语言源代码是学习和理解Java技术体系的重要途径,尤其对于开发者而言,阅读和分析源代码能够深化对语言特性的理解,提高编程技能。Java作为一种广泛使用的面向对象编程语言,其源代码包含了丰富的编程...

    JAVA JDK完整源代码

    这些源代码不仅对于Java开发人员来说是一份宝贵的资源,同时也对那些想要深入研究Java平台,优化性能,或者构建自定义JVM工具的开发者有着极高的价值。通过阅读和理解这些源代码,开发者可以更深入地了解Java的工作...

Global site tag (gtag.js) - Google Analytics