1) IDE:Eclipse和NetBeans
IDE是Java开发人员最为重要的工具。IDE不仅提供了集成的开发环境,还能够帮助导航、调试和记录代码。Eclipse作为行业领导者,有一半的Java开发人员都在使用它。而在编写测试程序、测试和调试Java web开发的新事物方面,我更推崇Netbeans,这是因为在web开发方面Netbeans更加容易使用,它附带了tomcat已经其它的一些应用服务器,方便于项目的创建、运行与调试。
2) 文本编辑器:Edit Plus, Notepad++和Sublime
Edit plus和Notepad++是两个不同用法的文本编辑器——记录随机想法,查看部分日志文件或者文档创建。Edit Plus最优秀的地方是它非常快速、流畅,并支持所有正则表达式的查找和替换任务。Notepad++可以打开任何类型的Java文件,甚至包含了未在IDE配置的文件,此外,它还支持语法高亮,这使得代码的阅读更加容易。此外,SubLime文本编辑器也备受人青睐,它有一个最大的好处就是免费。
3) 浏览器:Chrome和Firefox
无论你是在Java、C++、UNIX还是Network领域,在软件开发中,Google都是你的朋友和最重要的工具之一。为了有效地使用Google的服务,在IE没落的今日,你需要一个快速而流畅的浏览器,Google Chrome和Firefox是我最喜欢的两款浏览器。它们包含了检查和可视化等功能的内置web工具,因此,你可以使用它们检查HTML、CSS代码,进行代码修改调试,检查HTML、JavaScript文件在加载时所产生的错误等,这些信息对于Java EE开发人员和其它web开发人员是非常有用的。整个工具套件也被称为Chrome开发工具。
4)数据库开发:Aqua Data Studio
Aqua Data Studio是基于Java的数据库开发工具。你可以使用Aqua Data Studio连接Oracle、Sybase或SQL Server数据库。因此,如果你没有使用Oracle developer Studio或SQL Server Management Studio等特定于数据库的工具的时候,可以考虑AquaStudio。如果你需要连接到不同类型的数据库,那么它就更有用了,此外,除开AquaStudio的另一种选择是DB Artisan,但我不是很推荐它。Aqua Data Studio和DB Artisan都是付费工具,你需要授权许可才能使用。
5) XML文件工具:XMLSpy
XMLSpy是一个用于处理XML文件的收费软件,它支持XML文件搜索、XPATH查找、XPATH和XSLT的转换。XMLSpy的一个突出优点是支持对4,5M这样的大型XML文件进行处理,而不用担心其在Windows环境中崩溃。虽然你也可以使用Notepad + +或Internet explorer来打开XML文件,但在处理大型XML文件时会出现崩溃的状况,因此它们都不是最佳的选择。
6)插件:Eclipse插件
我使用过Eclipse中的大量插件,比如,用于反编译Java类文件的JadEclipse,用于创建UML图的eUML,用于创建和运行基于Maven项目的M2Eclipse,用于连接Eclipse源代码控制存储库的SVN和CVS插件以及用于静态代码分析的Findbugs插件。此外,这里还包含了许多关于Git的插件,这意味着你可以在Eclipse的Git存储库中创建Java项目。
7)服务器连接:Putty和Putty Connection Manager
由于我主要在Linux平台上工作,并且总是需要连接到不同的Linux服务器,因此我经常将Putty Connection Manager与Putty搭配一起使用。Putty是一个SSH客户端,它支持连接到任何UNIX服务器,并且通过使用Putty Connection Manager,你可以预先配置所有主机、用户名和密码,这将为你提供对任何主机的一键访问。如果你必须登录在多个环境中,例如测试、开发、验收测试、QA等,我强烈建议使用Putty Connection Manager。此外,Putty connection manager还有一些不错的替代者,比如mRemote和Putty Multi-Manager。
8)文件传输:FileZilla
如果你的开发环境是Windows,而你的应用程序需要运行在UNIX或者Linux上,那么你肯定需要一个工具来将文件从Windows转移到Linux或者从UNIX到Windows。 有许多工具和sftp客户端支持你将文件从Linux复制到Windows上,我尝试过FileZilla和WinSCP,但FileZilla才是我的最爱。通过SFTP,它可以将文件从Windows转到Linux,或者从Linux到Windows。FileZilla的下载使用是免费的,这真是一个了不起的FTP客户端。
9)文本文件对比:Beyond Compare
Beyond Compare是我最喜欢的比较工具。在开发的过程中,文件对比是最常见的工作之一,有时文件产生了变更需要了解变化,有时需要对比两个不同服务器的配置文件,有时需要比较两个不同版本的文件以了解bug产生的时段。虽然,你也可以使用Eclipse中的文本文件对比功能,但是在预发布和发布后活动方面Beyond Compare更有帮助,它能够验证所有文件是否处于正确的位置。Beyond Compare还可以直接对比UNIX窗口的文件、文件夹和路径,这为你了解哪些文件被新增和移除提供了可视化。Beyond compare不是一个免费的工具,它需要授权许可才可以使用。我正在寻找一个能够提供类似功能的免费工具,虽然WinMerge可以作为一个参考,但还是不很理想。
10)命令行工具:Cygwin
由于我主要在UNIX窗口上工作,我的全部Java应用程序都运行在这个环境里。但是,当我需要在Windows山上工作时,许多工具和命令都无法再使用,比如find、grep, xargs和vi。Cygwin可以在Windows上搭建仿UNIX环境,因此,如果你碰巧喜欢Linux,并且在Windows中开发Java程序时错过了它,那么Cygwin是一个不错的选择。此外,你也可以在VirtualBox上设置环境,并在这里安装Linux。
以上就是推荐Java程序员使用的工具列表。还有一些其它的工具,比如深受Java开发者欢迎的基于Windows的SVN客户端工具tortoise SVN和CVS,微软的Office系列工具Excel、Word、PowerPoint等,我没有在列表中列举,但是非常重要。还有对Java JEE开发者非常有用的工具Chrome Developer Tools、Firebug和Postman,它们都值得一提。