通用开发工具:1免费开源Eclipse
Eclipse最初是由IBM开发的,作为下一代IDE开发环境来取代Java的商业软件Visual Age。它于2001年11月被贡献给开源社区,现在由Eclipse Foundation管理,这是一个非盈利软件供应商联盟。Eclipse是一个开源的、基于Java的可扩展开发平台。它本身只是一个框架,一套通过插件组件构建开发环境的服务。幸运的是,Eclipse附带了一组标准插件,包括Java开发工具(JDT)。
Eclipse是著名的跨平台免费集成开发环境(IDE)。起初主要用于Java语言开发,但目前也已经作为C、PHP、Python等其他计算机语言的开发工具。通过插件。Eclipse本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有了其他功能相对固定的IDE软件很难拥有的灵活性。许多软件开发人员使用Eclipse作为框架来开发他们的ide。
2商业收费MyEclipse
MyEclipse是Eclipse的一个插件,也是一个强大的J2EE集成开发环境。它由Genuitec出版,是商业收费的。
MyEclipse是Eclipse IDE的扩展,在数据库和JavaEE的开发和发布以及应用服务器的集成方面可以大大提高工作效率。它是一个JavaEE集成开发环境,功能丰富,包括完整的编码、调试、测试和发布功能,全面支持HTML、Struts、JSP、CSS、Javascript、SQL、Hibernate和Spring。
3Oracle 免费的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 C等开发语言。
NetBeans项目得到了活跃的开发社区的支持,NetBeans开发环境提供了丰富的产品文档和培训资源以及大量第三方插件。
4IntelliJ理念
IntelliIdea是一个全面的Java编程环境,被许多开发人员和行业专家誉为市场上最好的IDE。它提供了一系列最实用的工具组合:智能编码辅助和自动控制,支持J2EE、Ant、JUnit、SVN和Git的集成,非并行编码检查和创新的GUI设计器。IDEA将Java开发人员从一些耗时的日常工作中解放出来,显著提高了开发效率。运行更快,生成更好的代码;持续的重新设计和日常编码变得更加容易,并与其他工具完美集成;性价比高等。IntelliIdea曾经是付费软件,但在2009年之后,它开始推出社区的免费开源版本。不过商业使用还是要收费的。
Eclipse、MyEclipse、NetBeans和IntelliJ IDEA的特点和应用场景:
Eclipse、MyEclipse、NetBeans和IntelliJ IDEA这四个ide有不同的特性和优势。可能需要根据不同的开发选择不同的ide。在Java开发的各个方面,这四个ide都是胜任的。但是,根据你做的不同开发,比如Swing开发、web开发或者企业开发,选择IDE是有偏差的。
Swing开发:
如果你专门从事Swing开发,NetBeans无疑是最好的选择。如果选择Eclipse而不是NetBeans,建议使用MyEclipse及其Matisse4Eclipse builder。IDEA因为支持JGoodies表单,所以在开发Swing方面与前两者相比没有优势。
JSP/Struts开发:
IDEA是开发JSP/Struts的首选,其次是MyEclipse,然后是NetBeans。由于缺乏对内置Struts的支持,基本版的Eclipse没有竞争优势。
JSF发展:
从开发JSF的角度来说,这三个ide可以说是不错的选择,不过IDEA可能好一点,其次是Eclipse/MyEclipse,最后是NetBeans。
企业发展:
因为NetBeans 对JPA的支持,其生成代码的质量以及对持久化单元的适当设置,NetBeans是企业开发的首选,其次是IDEA,由于Eclipse的限制,Eclipse可能是最后的选择大理项目。如果抛弃标准JPA,从事Hibernate开发,MyEclipse是最好的选择。
除了上面提到的四个大公司开发的ide,还有很多JAVA开发的ide,比如Spring基于eclipse推出的STS(Spring Tool Suite),小而快JCreator,但最常用的还是eclipse和IntelliJ IDEA。Eclipse和IntelliJ IDEA是国内Java开发者使用最广泛的。我使用eclipse和Spring s STS最多基于eclipse。
通用接口测试工具
作为开发人员,完成开发工作后,单元测试和接口测试必不可少。单元测试就不用说了,Java人几乎都是用JUnit和JUnit相关的测试框架。接口测试呢?可以用什么工具?让在讨论工具之前,我们先了解几个问题。
什么是接口测试?
用于检查每个组件接口的测试。接口测试主要检查外部系统和子系统之间的交互点,测试重点是数据传输。
为什么要做接口测试?
如果所有的项目都进行单元测试,时间不允许,接口测试是一种特殊的单元测试。覆盖率不是100%的所谓单元测试,但是覆盖了人脸用户的所有功能点。此外,接口测试可以自动化和持续集成,这节省了时间和成本,同时提高了效率。
Java第三方包httpclient
如果使用httpclient进行接口测试,不可避免的需要开发者自己编写代码,这不是首选。我不这个方案也不推荐,增加了程序员的工作强度。
1邮递员
Postman是一个非常强大的Chrome扩展,提供了强大的APIHTTP请求调试。它可以发送几乎所有类型的带有任意数量参数和请求头的HTTP请求。可以说Postman满足了HTTP接口测试的大部分功能,只是少部分功能不支持,比如:请求过程的控制;这样程序员就可以不用写一些单元测试了。
邮递员功能:
支持用例管理
支持get、post、文件上传、响应验证、变量管理、环境参数管理等功能。
支持批量操作
支持用例的导出和导入。
2吉米
Apache JMeter是Apache开发的压力测试工具,也是应用最广泛的开源性能测试工具之一。它最初是为Web应用测试而设计的,后来扩展到了其他测试领域。与其他性能测试工具一样,JMeter可以用来模拟服务器、网络或对象上的巨大负载,测试应用系统在不同压力类别下的强度,分析应用系统的整体性能。JMeter 100% JAVA开发,开源,完全可移植;采用Swing接口和轻量级组件支持包;支持插件扩展,可以支持新协议,监控系统资源,显示更丰富的性能图表。企业可以在JMeter的基础上实现二次开发,扩展JMeter的功能供自己使用。但是,记住Jmeter是JAVA开发的,安装Jmeter之前需要安装JDK。Jmeter很厉害,而且是作者最受欢迎的界面测试工具。
Postman和Jmeter功能:
(1)测试用例组织形式
Jmeter和Postman的测试用例是扁平化的,Jmeter通过TestPlan组织测试用例。邮差主要通过收集来组织测试用例。
(2)支持的接口类型和测试类型
功能上,Jmeter是最强大的,可以测试各种类型的接口(包括Http、数据库、webservice、ftp等。).不支持的也可以通过在线或者自己编写的插件进行扩展;Postman是轻量级的,定位不同,可以用来测试http接口和Rest接口。
(3)过程控制
Jmeter支持Switch控制器、If控制器、random控制器等一系列控制器实现进程控制,以及Beanshell脚本;邮差需要JavaScript脚本控制。
(4)断言
Jmeter中的TestPlan、Threads Group和Sampler可以添加断言;断言可以被添加到Postman 的HTTP请求。
(5)脚本扩展能力
Jmeter支持Bean shell用java语言写的;Postman支持用JavaScript语言编写的脚本。
(6)团队合作
Jmeter的一个测试计划是一个jmx(xml)文件,不能分割,但是Jmeter有一个合并功能,允许多个文件合并在一起。只有每个团队成员可以自己建立一个TestPlan,按功能块测试,最后整理合并;虽然邮差有团队合作的功能,但需要付费。
Jmeter和Postman还支持数据参数化、自定义变量、日志显示等功能。关键是Jmeter还可以在没有接口的Linux环境下进行压力测试和性能测试。从而分析系统的瓶颈;Jmeter的功能涵盖了邮差的所有功能,强烈推荐Jmeter。
常见远程连接工具
国内程序员大多在windows环境下开发,但是开发之后不可避免的需要部署到服务器上(Liunx);尤其是Java开发的程序几乎都部署在Unix或Linux系统上,而Unix和Liunx系统是没有接口的系统。如何将程序部署到远程Unix或Linux服务?这时候远程连接工具就派上用场了。特别是,如果你正在做一个银行项目,远程连接工具总是伴随着你。
1安全和安全传真
SecureCRT是一个支持SSH协议(SSH1和SSH2)的终端仿真程序。简单来说就是Windows下登录UNIX或Linux服务器主机的软件;SecureFX就是相应的文件上传工具。使用SecureFX允许我们使用SSH协议将文件上传到远程服务器。
2Xshell和Xftp
Xshell是一个功能强大的终端模拟器,支持SSH、SFTP、TELNET和远程登录命令连接。Xftp是一个灵活的轻量级SFTP/FTP客户端。用户需要通过网络安全地传输文件。它提供了强大的功能,如直接编辑多个窗格,文件夹同步,支持服务器到服务器的传输和集成第三方编辑器。
这两个工具是远程连接和文件上传工具的作者最常用的,任何一个都足以满足我们日常工作的需要。也可以用总指挥官;如果你只想上传文件;如果您只想远程连接,也可以使用Putty.exe。这个远程连接工具非常小,可以免费使用。
其他一些常用工具
文本编辑工具记事本和UltraEdit
比较工具超越比较
使用场景:在推出一个版本的时候,有时候需要比较一下生产版本和需要马上投入生产的版本的区别,所以需要这个工具。它提供了一个非常强大的比较功能。
反编译工具JD-GUI和JD-Eclipse
使用场景:有时候开发的代码的一个接口在开发环境中是好的,运行起来没有任何问题和瑕疵;但是在UAT环境或者准生产环境下(部署者确认已经部署了相应的接口),如果开发者需要进一步确认部署者正在部署Jar包,那么反编译工具就派上用场了。开发人员可以在UAT环境或者准生产环境中获取相应的Jar包,然后进行反编译,看相应接口的逻辑是否与开发环境一致。
TypeAndRun,快速入门工具
TypeAndRun (TAR)是一个可以通过热键调出的控制台。从这个控制台,你可以运行任何程序,打开各种文件,网址,电子邮件和文件目录。除了容易地为你的常用程序创建别名,TypeAndRun还有大量的内置系统别名。使用用户定义的快捷键调用命令行后,输入别名来执行相应的操作。而且TypeAndRun可以自动完成已经建立的别名,而不必记住所有的名字。你不不需要像一些快捷工具一样记住那么多快捷方式。这个工具是我极力推荐给开发者的。当你使用它时,你不会不需要打开我的电脑并且每次都双击它。
源洞察力
Source Insight是一个用于项目开发的程序编辑器和代码浏览器。它内置了对C/C、C#和Java等程序的分析。SourceInsight可以在您工作时分析您的源代码并动态维护其自己的符号数据库,并自动为您显示有用的上下文信息。
使用场景:如果要在大量的Java代码中搜索某些关键词,使用Source Insight工具可以非常快速的找到对应的关键词;同时,Source Insight支持Java关键字的高亮显示功能。
MySQL连接工具SQLyog
使用场景:SQLyog是一个连接mysql数据库的紧凑图形工具。使用sqlyog主要是方便开发者操作mysql数据库。它提供诸如完成、关键字突出显示和格式化SQL语句等功能。在类似的mysql图形界面工具中使用起来相当容易。
摘要
推荐十几个软件,涉及开发工具、接口测试工具、远程连接工具、文本工具、数据库连接工具等等。这些工具是免费和开源的;还有商业收费(任何长期使用自己的方式哦!)。在小公司使用这些工具可以满足程序员80%的开发需求。这里的工具不涉及UML工具、原型工具、项目管理工具等。
标签:工具开发接口