从代码构建到性能分析,高效 Java 开发人员的首选工具
#点击图片报名参加武汉、长沙源创会#
Java 由于其实用性、跨平台性、可移植性等众多优点一直备受开发者青睐,在各大编程语言排行榜中也一直居高不下,因此本文为 Java 开发者们总结了这八个工具,它们几乎涵盖了Java开发的全部范围,从代码构建到错误压缩。这些工具可以帮助您提高代码的质量,并成为更高效的Java开发人员。
1
集成开发环境 Eclipse
Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C++和Python的开发工具。
Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。
2
Groovy 构建工具 Gradle
Gradle就是可以使用来书写构建脚本的构建系统,支持依赖管理和多项目,类似,但比之简单轻便。
虽然Gradle并不是最流行的构建工具(最流行的是Maven,64% 的Java 开发人员会选择它),但它的普及速度很快。它也可以作为默认的 Android 构建工具。
以上是Gradle的构建文件build.gradle中的内容,是不是比Ant的build.xml要简单太多了?这就是“惯例”的力量。由此,我们可以了解Gradle的第一个特点:“CoC(惯例优于配置)”。只要按照Gradle的惯例,那么可以最大限度的减少build文件的内容。
3
Java 单元测试框架 JUnit
JUnit是一个Java语言的单元测试框架。它由Kent Beck和Erich Gamma建立,逐渐成为源于Kent Beck的sUnit的xUnit家族中为最成功的一个。 JUnit有它自己的JUnit扩展生态圈。
多数Java的开发环境都已经集成了JUnit作为单元测试的工具。
4
代码覆盖率检查工具 Cobertura
Cobertura 是一种开源工具,它通过检测基本的代码,并观察在测试包运行时执行了哪些代码和没有执行哪些代码,来测量测试覆盖率。除了找出未测试到的代码并发现 bug 外,Cobertura 还可以通过标记无用的、执行不到的代码来优化代码,还可以提供 API 实际操作的内部信息。Elliotte Rusty Harold 将与您分享如何利用代码覆盖率的最佳实践来使用 Cobertura。
下图是 Cobertura 的输出结果
5
Java 代码 Bug 分析插件 FindBugs
FindBugs是一个能静态分析源代码中可能会出现Bug的Eclipse插件工具。它检查类或者 JAR 文件,将字节码与一组缺陷模式进行对比以发现可能的问题。有了静态分析工具,就可以在不实际运行程序的情况对软件进行分析。当提供源代码时, FindBugs 还可高亮显示检测出 bug 的代码。
6
Java 程序性能分析工具 VisualVM
VisualVM是一个集成多个JDK命令行工具的可视化工具。可以作为Java应用程序性能分析和运行监控的工具。开发人员可以利用它来监控、分析线程信息,浏览内存堆数据。系统管理员可以利用它来监测、控制Java应用程序横跨整个网络的情况。Java应用程序使用人员可以利用它来创建包含所有必要信息的Bug 报告。
7
JVM 动态脚本语言 Groovy
Groovy是一种基于JVM的敏捷开发语言,它结合了Python、Ruby和Smalltalk的许多强大的特性。
Groovy 主要的特点包括:
是一个基于Java虚拟机的敏捷动态语言。
构建在强大的Java语言之上 并添加了从Python,Ruby和Smalltalk等语言中学到的诸多特征。
为Java开发者提供了现代最流行的编程语言特性,而且学习成本很低(几乎为零)。
支持DSL(Domain Specific Languages领域定义语言)和其它简洁的语法,让你的代码变得易于阅读和维护。
Goovy拥有处理原生类型,面向对象以及一个Ant DSL,使得创建Shell Scripts变的非常简单。
在开发Web,GUI,数据库或控制台程序时 通过减少框架性代码 大大提高了开发者的效率。
支持单元测试和模拟(对象),可以简化测试。
无缝集成 所有已经存在的 Java对象和类库。
直接编译成Java字节码,这样可以在任何使用Java的地方 使用Groovy。
荣誉奖
Java集成开发环境 IntelliJ IDEA
IntelliJ IDEA被认为是当前Java开发效率最快的IDE工具。它整合了开发过程中实用的众多功能,几乎可以不用鼠标可以方便的完成你要做的任何事情,最大程度的加快开发的速度。简单而又功能强大。与其他的一些繁冗而复杂的IDE工具有鲜明的对比。
当然,如果这上面没有您的首选工具,您可以在评论中提出,以供更多开发者学习和交流。
责任编辑:
转载必须在正文中标注并保留原文链接和作者等信息