本文来自作者 huangjinjin 在 GitChat 上分享 「Java 程序员开发常用的工具」
编辑 | 哈比
一、常用开发工具
作为一名 Java 程序开发人员,可选择的集成开发环境 IDE(Integrated Development Environment)非常多,这得益于 Java 是一门开源语言。
有开源免费的;有商用收费的。
如何选择一款适合自己的集成开发环境,亦或说选择一款符合自己项目开发需要的集成开发环境。
选择得当能够使得开发工作事半功倍;否则事倍而功半。
免费开源 Eclipse
Eclipse 最初是由 IBM 公司开发的替代商业软件 Visual Age for Java 的下一代 IDE 开发环境,2001 年 11 月贡献给开源社区,现在它由非营利软件供应商联盟 Eclipse 基金会(Eclipse Foundation)管理。
Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。
幸运地是 Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。
Eclipse 是著名的跨平台的*集成开发环境(IDE)。
最初主要用来 Java 语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如 C++、PHP、Python 等语言的开发工具。
Eclipse 的本身只是一个框架平台,但是众多插件的支持使得 Eclipse 拥有其他功能相对固定的 IDE 软件很难具有的灵活性。许多软件开发商以 Eclipse 为框架开发自己的 IDE。
商用收费 MyEclipse
MyEclipse 是 Eclipse 的插件,也是一款功能强大的 J2EE 集成开发环境,由 Genuitec 公司发布,它是商用收费的。
MyEclipse 是对 Eclipse IDE 的扩展,利用它可以在数据库和 JavaEE 的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的 JavaEE 集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持 HTML、Struts、JSP、CSS、Javascript、SQL,Hibernate,Spring。
Oracle 公司免费的 NetBeans
NetBeans 是 Sun 公司(2009 年被甲骨文收购)在 2000 年创立的开放源代码供开发人员和客户社区的家园,旨在构建世界级的 Java IDE。
NetBeans 当前可以在 Solaris、Windows、Linux 和 Macintosh OS X 平台上进行开发,并在 SPL(Sun 公用许可) 范围内使用,是一个屡获殊荣的集成开发环境。
NetBeans 包括开源的开发环境和应用平台,NetBeans IDE 可以使开发人员利用 Java 平台能够快速创建 Web、企业、桌面以及移动的应用程序,NetBeans IDE 目前支持 PHP、Ruby、JavaScript、Ajax、Groovy、Grails 和 C /C + + 等开发语言。
NetBeans 项目由一个活跃的开发社区提供支持, NetBean 开发环境提供了丰富的产品文档和培训资源以及大量的第三方插件。
IntelliJ IDEA
IntelliJ IDEA 是一款综合的 Java 编程环境,被许多开发人员和行业专家誉为市场上最好的 IDE。
它提供了一系列最实用的的工具组合:智能编码辅助和自动控制,支持 J2EE,Ant,JUnit,SVN 和 Git 集成,非平行的编码检查和创新的 GUI 设计器。
IDEA 把 Java 开发人员从一些耗时的常规工作中解放出来,显著地提高了开发效率。具有运行更快速,生成更好的代码;持续的重新设计和日常编码变得更加简易,与其它工具的完美集成;很高的性价比等特点。
IntelliJ IDEA 以前是收费软件,不过在 2009 年以后就开始推出了免费的社区开源版本。不过商用还是需要收费的。
Eclipse、MyEclipse、NetBeans 和 IntelliJ IDEA 的特点和适用场景:
Eclipse、MyEclipse、NetBeans 和 IntelliJ IDEA 这四个 IDE 有着不同的特性和优点,根据开发的不同可能需要选择不同的 IDE。
在 Java 开发的每个方面,这四个 IDE 都能胜任工作,然而根据你所做的不同开发例如 Swing 开发,web 开发或者企业开发,选择 IDE 就有所偏向。
(1)Swing 开发
如果你专门从事 Swing 开发,NetBeans 无疑是最好的选择。
如果你没有选择 NetBeans 而是选择了 Eclipse,建议使用 MyEclipse 和它的 Matisse4Eclipse 构造器。
IDEA 由于对 JGoodies Forms 的支持,所以在开发 Swing 方面与前两者相比并不占有优势。
(2)JSP/Struts 开发
开发 JSP/Struts 首选的是 IDEA,接下来是 MyEclipse,然后是 NetBeans,由于缺少对内建 Struts 的支持,Eclipse 的基本版本没有竞争优势。
(3)JSF 开发
在开发 JSF 方面,这三个 IDE 可以说都是很好的选择,但是 IDEA 可能会更好一点,接下来是 Eclipse/MyEclipse,最后是 NetBeans。
(4)企业开发
由于 NetBeans 对 JPA 的支持和它产生代码的质量以及对持久化单元合适的设置,所以在企业开发方面,NetBeans 是首选,接下来是 IDEA。
由于 Eclipse 的 Dali 项目的限制,Eclipse 可能是最后选择的。如果放弃标准的 JPA,从事 Hibernate 开发,MyEclipse 是最好的选择。
除了上面提到的这四款由大公司开发的 IDE 外,JAVA 开发的 IDE 还有很多,例如 Spring 基于 eclipse 推出的 STS Spring Tool Suite、小而且快的 JCreator。
但是以上最常用的 eclipse 和 IntelliJ IDEA。
国内 Java 开发人员使用的最多也是 eclipse 和 IntelliJ IDEA。笔者用的最多是 eclipse 及 Spring 基于 eclipse 推出的 STS。
二、常用接口测试工具
作为一名开发人员,完成开发工作后,单元测试及接口测试必不可少。单元测试不用说了,Java 人员几乎都是使用 JUnit 及 JUnit 相关的测试框架。
对于接口测试呢?有什么工具可以使用呢?在说工具之前先来了解两个问题。
什么是接口测试?
用来检查各个组件的接口的测试,接口测试主要检查外部系统与系统之间以及各个子系统之间的交互点,测试的重点在数据的传递上。
为什么要做接口测试?
如果项目全部推行单元测试,时间上不允许,而接口测试是一种特殊的单元测试,覆盖率没有做到所谓的单元测试的百分之百。
不过覆盖了所有的面像用户的功能点,而且接口测试可以采用自动化 + 持续集成的方式,节约时间了成本,同时提高了效率。
java 第三方包 httpclient
如果使用 httpclient 进行接口测试,免不了开发人员还需要自己动手去编写代码,这个不是首选方案。笔者也不推荐这个方案,增加了程序人员的工作强度。
Postman
Postman 是一款功能非常棒的 Chrome 扩展,提供功能强大的 API&HTTP 请求调试。它可以发送几乎所有类型的 HTTP 请求,并可以附带任何数量的参数和请求头(headers)。
可以说 Postman 满足了 HTTP 接口测试的大部分功能,只有少部分的功能不被支持,比如:请求流程的控制;使得程序员可以在编写一些单元测试中解脱出来。
Postman 特点:
支持用例管理
支持 get、post、文件上传、响应验证、变量管理、环境参数管理等功能
支持批量运行
支持用例导出、导入
支持云端保存用例(需付费)
最后推荐一篇文章:https://goo.gl/Y9e1Ar。
扫描下方二维码
阅读完整原文
并与作者交流