0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Java程序员开发常用的工具(全)

机器学习算法与人工智能 来源:未知 作者:邓佳佳 2018-03-20 10:42 次阅读

常用开发工具:1免费开源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。

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 + +等开发语言。

NetBeans项目由一个活跃的开发社区提供支持, NetBean开发环境提供了丰富的产品文档和培训资源以及大量的第三方插件。

4IntelliJ 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就有所偏向。

Swing开发:

如果你专门从事Swing开发,NetBeans无疑是最好的选择,如果你没有选择NetBeans而是选择了Eclipse,建议使用MyEclipse 和它的Matisse4Eclipse构造器。IDEA由于对JGoodies Forms的支持,所以在开发Swing方面与前两者相比并不占有优势。

JSP/Struts开发:

开发JSP/Struts首选的是IDEA,接下来是MyEclipse,然后是NetBeans,由于缺少对内建Struts的支持,Eclipse的基本版本没有竞争优势。

JSF开发:

在开发JSF方面,这三个IDE可以说都是很好的选择,但是IDEA可能会更好一点,接下来是Eclipse/MyEclipse,最后是NetBeans。

企业开发:

由于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进行接口测试,免不了开发人员还需要自己动手去编写代码,这个不是首选方案。笔者也不推荐这个方案,增加了程序人员的工作强度。

1Postman

Postman是一款功能非常棒的Chrome扩展,提供功能强大的API&HTTP请求调试。它可以发送几乎所有类型的HTTP请求,并可以附带任何数量的参数和请求头(headers)。可以说Postman满足了HTTP接口测试的大部分功能,只有少部分的功能不被支持,比如:请求流程的控制;使得程序员可以在编写一些单元测试中解脱出来。

Postman特点:

支持用例管理

支持get、post、文件上传、响应验证、变量管理、环境参数管理等功能

支持批量运行

支持用例导出、导入

2JMeter

Apache JMeter是Apache组织开发的压力测试工具,也是目前应用最广泛的开源性能测试工具之一。它最初被设计用于Web应用测试,后来扩展到其他测试领域。像其他性能测试工具一样,JMeter可以用于对服务器、网络或对象模拟巨大的负载,来测试不同压力类别下应用系统的强度,分析应用系统的整体性能。JMeter由100% JAVA开发,开源,具备完全的可移植性;采用Swing界面和轻量组件支持包;支持插件扩展,可以通过扩展插件支持新的协议,监控系统资源,展示更丰富的性能图表等。企业能够在JMeter的基础上实现二次开发,扩展JMeter的功能为己所用。不过要记住Jmeter由JAVA开发,安装Jmeter之前需要先安装JDK。Jmeter功能非常强大是笔者最喜欢的接口测试工具,没有之一。

Postman和Jmeter特点:

(1)测试用例组织形式

Jmeter和Postman的测试用例组织形式都比较扁平,Jmeter通过测试计划(TestPlan)来组织测试用例;Postman主要通过集合(Collection)来组织测试用例。

(2)支持的接口类型与测试类型

从功能上Jmeter最为强大,可以测试各种类型的接口(包括Http、数据库、webservice、ftp等),不支持的也可以通过网上或自己编写的插件进行扩展;Postman是轻量级的,定位也不同,可用来测试http接口和Rest接口。

(3)流程控制

Jmeter支持Switch控制器、If控制器、随机控制器等一系列控制器实现流程控制,以及Beanshell脚本;Postman则需要通过JavaScript脚本控制

(4)断言

Jmeter中的TestPlan、Threads Group和Sampler均可添加断言;Postman的HTTP请求的Tests中可添加断言。

(5)脚本扩展能力

Jmeter支持用java语言编写的Bean shell;Postman支持使用JavaScript语言编写的脚本

(6)团队协作

Jmeter的一个TestPlan就是一个jmx(xml)文件,无法分割,但是Jmeter有一个合并的功能,允许将多个文件合并在一起。只能每个团队成员自己建立一个TestPlan,分功能块进行测试,最后整理合并;Postman虽然有团队协作的功能,但是需要付费。

Jmeter和Postman都还支持数据参数化、自定义变量、显示日志等功能。其中重点要说的是Jmeter还可以在无界面的Linux环境进行压力测试、性能测试;以便分析系统的瓶颈;Jmeter的功能覆盖了Postman的所有功能,所以强烈推荐使用Jmeter。

常用远程连接工具

做开发是国内程序员大部分都是在windows环境开发,但是开发完毕后,免不了需要部署到服务器(Liunx);特别是Java开发的程序,几乎都是部署在Unix或者Linux系统,而Unix和Liunx系统是无界面的系统。如何把程序部署到远程的Unix或者Linux服务呢?这时候远程连接工具就派上用场了。这里特别提一下如果做得是银行项目,远程连接工具是常伴左右的。

1SecureCRT和SecureFX

SecureCRT是一款支持SSH协议(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录UNIX或Linux服务器主机的软件;SecureFX是对应的文件上传工具,使用SecureFX可以让我们使用SSH协议上传文件到远程服务器。

2Xshell和Xftp

Xshell是一个功能强大的终端模拟器,支持SSH、SFTP、TELNET、远程登录命令连接; Xftp是一个灵活和轻量级SFTP / FTP客户端用户需要安全地通过网络传输文件。它提供了强大的功能,如直接编辑多个窗格、文件夹同步、他们支持服务器到服务器转移和第三方编辑器集成。

远程连接和文件上传工具笔者最常用的就是这两款,有这任何一款都足以满足我们日常工作的需要了。如果只想上传文件话也可以使用Total Commander;如果只想远程连接的话也可以使用Putty.exe,这个远程连接工具非常小巧,而且免费使用。

一些其他常用工具

文本编辑工具Notepad++和UltraEdit

对比工具beyondcompare

使用场景:在进行版本上线时,有时需要对比一下生产版本与现在马上需要投产的版本有什么区别就需要用到该工具了,该工具提供了非常强大的对比功能。

反编译工具JD-GUI和JD-Eclipse

使用场景:有时开发的代码某个接口在开发环境是好好的,跑的没有任何问题和纰漏;但是UAT环境或者准生产环境(部署人员确认已经部署了对应的接口),如果开发人员需要进一步确认部署人员正在部署了Jar包,这时反编译工具就派上用场了,开发人员可以在UAT环境或者准生产环境获取相应的Jar包,然后反编译看看相应接口的逻辑跟开发环境的是否一致。

快速启动工具TypeAndRun

TypeAndRun (TAR) 是一个可以用热键呼出的控制台,从这个控制台上可以运行任何程序、打开各类文档、URL、电子邮件和文件目录。除了可以方便的为自己的常用程序建立别名,TypeAndRun也内置了大量“系统别名”用自定义的快捷键调出命令行后,输入别名即可执行相应操作。而且TypeAndRun 可以为已经建立的别名自动补全,无需记住全部名称。也不用像一些快捷键工具一样要记住那么多快捷键。这个工具是我极力推荐给广大开发人员的,使用了它就不需要打开“我的电脑”每次都使用鼠标双击了。

Source Insight

Source Insight是一个面向项目开发的程序编辑器和代码浏览器,它拥有内置的对C/C++,C#和Java等程序的分析。SourceInsight能分析你的源代码并在你工作的同时动态维护它自己的符号数据库,并自动为你显示有用的上下文信息

使用场景:如果想在大量Java代码中搜索某些关键字,使用Source Insight工具可以非常快速找到相应的关键字;同时Source Insight支持Java关键字的高亮功能。

MySQL连接工具SQLyog

使用场景:SQLyog是一款小巧的、连接mysql数据库的图形化工具。使用SQLyog主要方便开发人员操作mysql数据库,他提供了补全、关键字高亮、格式化sql语句等功能,在同类mysql图形界面工具中相当好用。

总结

以上推荐了十几款软件,涉及到开发工具、接口测试工具、远程连接工具、文本工具、数据库连接工具等等。这些工具有免费开源的;有商用收费的(任何长期使用自己想办法哦!!)。在小公司使用以上的这些工具能满足程序员百分之八十的开发需要。这里的工具没有涉及到UML工具、原型工具、项目管理工具等。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • JAVA
    +关注

    关注

    19

    文章

    2957

    浏览量

    104535

原文标题:Java 程序员开发常用的工具(全)

文章出处:【微信号:machinelearningai,微信公众号:机器学习算法与人工智能】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Linux驱动程序程序员指南

    电子发烧友网站提供《Linux驱动程序程序员指南.pdf》资料免费下载
    发表于 11-22 15:53 0次下载
    Linux驱动<b class='flag-5'>程序</b><b class='flag-5'>程序员</b>指南

    AI编程工具会不会抢程序员饭碗

    AI编程工具可辅助编程,减少手动编码,提升效率,对程序员有积极影响也有挑战。程序员需深化技能、拓宽知识应对。长远看,AI与人类程序员将共生共荣。
    的头像 发表于 11-08 10:17 105次阅读

    第五届长沙·中国1024程序员节开幕

    场精彩活动将轮番上演。超200名海内外技术人员围绕人工智能、数据技术等前沿领域展开深入研讨。 本届1024程序员节中机器人与具身智能、大模型等主题引发热烈讨论;程序员开发者如何利用生成式AI提升
    的头像 发表于 10-25 15:42 155次阅读

    京东上万程序员都AI用它!

    对大模型生成代码进行智能修复,为程序员开启代码漏洞修复的“自动驾驶”模式,不但减少人工接入、提高工作效率,更为企业抵御内外部各种攻击构建起一道坚固的安全屏障,确保业务的连续性和稳定性。 JoyCoder是京东云自主研发的一款辅助开发人员
    的头像 发表于 07-17 16:29 221次阅读
    京东上万<b class='flag-5'>程序员</b>都AI用它!

    程序员节视频创意大赛,用串口屏赢取千元大奖

    10月24日,程序员专属的节日里,我们盛大开启“程序员节视频创意大赛”特别活动!这不仅是一场视觉的盛宴,更是智慧与创意的璀璨碰撞。我们诚挚邀请每一位程序员及编程爱好者,拿起你的镜头,记录下那些平凡日子中的不凡瞬间,让编程的魅力与
    的头像 发表于 07-08 10:38 72次阅读
    <b class='flag-5'>程序员</b>节视频创意大赛,用串口屏赢取千元大奖

    程序员节视频创意盛宴,邀您共襄盛举!

    10月24日,程序员专属的节日里,我们盛大开启“程序员节视频创意大赛”特别活动!这不仅是一场视觉的盛宴,更是智慧与创意的璀璨碰撞。我们诚挚邀请每一位程序员及编程爱好者,拿起你的镜头,记录下那些平凡日子中的不凡瞬间,让编程的魅力与
    的头像 发表于 07-04 09:00 67次阅读
    <b class='flag-5'>程序员</b>节视频创意盛宴,邀您共襄盛举!

    阿里云发布首个AI程序员,引领应用开发进入“分钟级”时代

    近日,在备受瞩目的阿里云上海AI峰会上,阿里云向全球开发者们展示了其最新的技术成果——首个“AI程序员”。这款创新应用基于通义大模型构建,具备了令人惊叹的多项技能,包括架构师、开发工程师、测试工程师等,为软件
    的头像 发表于 06-24 10:36 618次阅读

    适者生存,程序员最终会流向哪……

    程序员没有永远的护城河!!就目前的互联网大环境来看,it行业已经是……
    的头像 发表于 03-11 17:11 387次阅读
    适者生存,<b class='flag-5'>程序员</b>最终会流向哪……

    薪资高、青春饭,是不是程序员=青楼?

    花期太短。技术迭代快,年龄大容易失业。 就这几年的互联网环境而言,不管是前端、Java、Android开发等等行业。已经感受到程序员不是太卷就是工作难找,薪资过低。以前高工现在拿着中低程序员
    发表于 03-06 21:32

    感觉我国的程序员前景一片灰暗,是这样吗?

    程序员也分为好几等,在现在看来大部分的Android、Java、前端等等开发。已经看不到希望了,很多人都在边缘挣扎;刚看到一位Android开发者,过完年回公司就通知被裁;可见每年都
    发表于 02-20 20:52

    2024程序员的未来方向如何走?还看今朝

    这几年的IT行业想必大家已经感受到了,Android、Java、前端等等程序员都经历了大厂……
    的头像 发表于 02-02 09:45 777次阅读
    2024<b class='flag-5'>程序员</b>的未来方向如何走?还看今朝

    1月18号“纯鸿蒙”千帆启航,程序员预备!

    。 如何正确看待鸿蒙? 我作为程序员来说,首先是看鸿蒙的发展、市场开发岗位、薪资以及前景。 这几年对鸿蒙的发展情况来分析,从2019年开始鸿蒙的出来今天,华为鸿蒙取得了很大的成就。从“不兼容
    发表于 01-16 22:13

    诚邀报名 | GPT驱动的新程序员时代,开发者如何编程?

    模式,开发者们迎来了编程范式的全新变革。传统的编程不再局限于编写线性代码和优化逻辑,自然语言取而代之,成为了编程的新工具,这大大降低了开发的门槛。 如今,以ChatGPT、Copilot等为代表的AI
    的头像 发表于 12-11 22:20 513次阅读

    开发java程序的一般步骤是

    开发Java程序的一般步骤通常包括需求分析、设计、编码、测试和部署等阶段。下面将详细介绍Java程序开发
    的头像 发表于 11-28 16:43 1558次阅读

    codeblocks工具栏恢复

    CodeBlocks是一种开发环境,广泛用于编写和调试各种编程语言的源代码。它提供了用户友好的界面,以及各种工具和功能,方便程序员进行开发工作。而恢复CodeBlocks
    的头像 发表于 11-26 09:57 4881次阅读