看了很多网上的关于eclipse与netbeans比较的文章,国外用户总能比较客观比较各种ide的一些优缺点,到了国内,就成了一些无聊的争论。
以netbeans代码补全太慢断定netbeans速度慢,却不知道这种延时是可以在ide中配置的。
以保存编译功能来吹eclipse如何高级,却没有遇到有时一次保存会导致机器失去响应的现象,除非你只是在写helloworld项目,没有这种保存编译功能是很多程序员所期望的。
快捷键不习惯,却不知道netbeans可以直接设置使用eclipse兼容的快捷键,可见netbeans对其它ide的包容。
抱怨没有组织导入,生成getter,setter功能,却不知道这只在netbeans IDE中换了一种新名词。
netbeans 界面不好看,却不知道netbeans是swing界面,可以很容易的利用第三方包对netbeans进行换肤,OfficeLnfs(提供office xp,2003 ,vs2005界面),JGoodies,netbeans中还另外有插件支持换肤。eclipse的swt宣称使用native look&feel,如何解释eclipse 3中的dock和tab,何况eclipse所说的"native"仅限windows,在linux,使用gtk,很多主题eclipse根本不能适 应,还谈什么native,在java 6下,还不如swing中的gtk界面,当然我个人还是喜欢Metal。
其他,抱怨默认java source的imports部分是展开的(可以修改设置),字体不好看等,更是无聊至极。
从功能上讲,默认安装eclipse sdk或是wst all in one根本就不能和netbeans IDE相提并论,
netbeans IDE比eclipse sdk多出的功能包括,EJB 3.0开发,struts支持等。
使用eclipse,我一般选择下载比较好的集成包。
开源的集成包比较好的有:
1。ibm 的j2ee eclipse 开发包,可以从ibm.com/developerWorks上下载.
2。JBoss IDE,目前有2.0beta2版本,开发进度很慢,集成了很多工具.
3。Lomboz,用eclipse比较早的用户一定对这个词如雷贯耳,lomboz早期的web方面的成果都已经被eclipse的wst项目吸收,现在lomboz提供一些额外的功能,支持portal,struts,sca开发,提供了all in one包
4。eclipse wst提供的all in one包
然后加上一些常用插件就可以满足我的基本开发。
netbeans ide本身提供的功能就不能小看,何况netbeans还有几个pack,
1。Enterprise pack:支持UML 与java 代码同步,Design pattern辅助设计,等。eclipse平台只有Jbuilder 2007 和ibm 自己的rsa才有这样功能。。。.
2。Visual Web Pack:JSF可视化设计,数据视化操作,。。。eclipse平台找不到这样的工具
3。Portal Pack 支持Portlet开发
其它几个Pack我不用。
netbeans全部支持java EE 5,eclipse平台除了jbuilder 2007支持ejb 3,找不到一款开源工具。。。
至 于速度,不用说了如果只是安装一个eclipse sdk,没有插件,没有建项目,eclipse比较快。但是你要安装插件,速度明显会降下来,再建几个项目,不管是启动还是开发过程中的响应速度可以说无 法忍受。。。在公司我的eclipse中有10几个项目,不得不想办法将它们分开到不同的workspace中去。
netbeans在这方面要好一些,可以通过配置文件,优化GC,通常会在启动时降低速度,但开发过程中,响应速度一直都很快。
eclipse虽然开源插件多如牛毛,但是插件质量参差不齐,真正可用的曲指可数,插件之间冲突也是常有之事,eclipse 3以来新特性很少,根本没有什么新特性。。。
基于eclipse平台几个比较好的软件有:
Exadel Studio (标准版本免费)
Bea Workshop Studio(以前的m7,jsp版本免费,我申请了一个一年免费的lisence)
Jbuilder 2007 (集成together 2006 sp2 ,任务管理,代码质量分析等)
ibm RSA(v6.0 是基于eclipse 3.0的,体积相当大,提供设计,开发功能,与ibm的其它工具结合紧密)
但是,这些都不是免费的,。。。
netbeans 5.5平台安装了官方的几个pack,功能已经非常强大了,特别是enterprise pack 可以代替rsa了,还有第3方module的支持。
常用的module有:
1.nbextras.org 有大量第3 方module安装, 有很多关于netbeans module的项目,如facelets,tapestry,wicket,groovy等支持
2.maven ide 支持maven1,maven 2,maven在netbeans上支持比eclipse要好得多,6.0已经将maven集成进去,作为ant外的另一个可选的项目管理工具。
3.Hibernate 有两个module http://hts.dev. , http://nbxdoclet.
4.Spring :http://spring-netbeans. 另外还有一个很强的,没有正式发布,
eclipse的插件管理是最另人头痛的地方,我也是我比较喜欢上面集成包的原因之一,升级或安装新的插件都有可能导致eclipse,无法启动,最另人恼火的是,插件升级会导致体积成倍的增加,eclipse升级绝大部插件都不包括删除旧插件的功能。
当然netbeans目前不足也是明显的。
1.eclipse 3.2 比netbeans 5.5在代码辅助上要强一点。
2.netbeans在界面设计,操作上细节上也有一些不足,存在设计不一致现象。
3.netbeans 5.5上还没有很好的消化enterprise pack,web pack 的所有功能,有些功能也要改进。
另 外,netbean也由于集成的功能过多,特别是sun慷慨的捐出Java Enterprise Studio,Java Studio Creator,成立netbeans开源子项目Visual Web Pack,Enterprise Pack,虽然是开发人员所期望的,但会导致很厂商感到不安,甚至对netbeans平台失去兴趣,相反,eclipse对厂商要友好一些,它允许厂商在 平台中动手脚,不同公司同样平台可能会导致不兼容,这对开发人员来说是灾难,面对这种情况,不得不安装多个eclipse平台。
不过netbeans 6.0是值得期待,6.0的代码辅助完全重新设计,基于java6最新的Java Compiler API,功能远远超过对手,现在milestone 6已经可以体验到了,。。这已经不eclipse可以比的了,6.0已经让我们看到了intelliJ IDEA。。。
m6中还多种脚本语言的支持(javascript,php,ruby),内置了maven的支持,Docbook的支持,scm很得到了加强
等到6.0发布,我们还需要eclipse吗?