Eclipse还是开源IDE的领头羊吗?

 随着NetBean6.0发布脚步的逼迫,Java IDE领域又是风起云涌,刀光剑影。随着老牌的JBuilder已成昔日黄花,最近几年火的不得了的Eclipse还没来得及体验“高处不胜寒”的成就感,即被Sun公司如法泡制的NetBeans给抢了镜头。如今的Sun,对IBM来了个以其人之道还及其人之身,对Eclipse来了个“全体复制”,将Eclipse的几乎所有的特点都搬到了NetBeans中,如插件、开源、免费、Web开发等等,同时又在NetBeans6.0中大秀自己的技术老底。那么面对NetBeans如此来势汹汹的进攻或是搅局,Eclipse还能“一揽众山小”吗?还会是开源IDE的领头羊吗?

  一、 前言

  尽管Java是Sun所开发的,但Java IDE似乎从来都没有Sun的份。虽然Sun出了一个叫Java Visual Age,但这个东西说白了,充其量就是个高级记事本而已,大有出师未捷身先死的味道,让无数人对Sun一直充满恨铁不成钢的感情。可Sun也不是省油的灯,不会这么永远甘于寂寞的。经过多年的努力和偷窥(对IMB Eclipse),Sun终于推出了自已新的Java IDE:NetBeans.这个工具的前身就是Visual Age.在NetBeans刚推出不久,由于NetBeans性能和功能上的原因,一直也没像Eclipse那么出名,又一次做了Eclipse的炮灰。不过在2006年,Sun推出了NetBeans5.5,这个版本不仅功能强大,而且性能得到了很大的提高,同时和Eclipse一样,也是免费开源的,战绩不错。这下Sun好像看到了希望,使出的吃奶的力气及浑身解术,2007年又接着推出NetBeans 6.0 beta 1,并预期2007年11月正式推出NetBeans 6.0.

  在开源的集成开发环境领域,Eclipse曾经是无数Java开发者的首选IDE.如果仅仅考虑市场占有份额,Eclipse和NetBeans的争夺早就以Eclipse的胜利而告终。不过,当涉及到创新时,情况就不是那么清晰了。在过去两年中,Eclipse采用了模型平台,也就是说这是一个有很多个合作伙伴提供插件的基础框架,而不是一个集成开发环境。当然,这听上去非常的美妙。但很多时候往往是事与愿违。大量的厂商为Eclipse推出许多插件产品,但一个不可否认事实是,网上大量的Eclipse用户,甚至高级用户,他们无法添加,修改或删除插件。因为“越来越多的功能”的方式一方面提供了大量的工具,但对插件的膨胀,缺乏合适的管理及编辑经验的用户迷茫了。

  相比之下,NetBeans几乎已经实现了一个轻量级的,反应迅速的,并且容易配置的集成开发环境。它致力于提供顶级的插件(其Matisse GUI设计器,性能模拟器和在线辅助工具都是行业中的领头羊),并把它们无缝集成到IDE中。2007年,NetBeans下定决心来完全重新设计代码编辑器,从而使之更接近最用户友好的Java编辑器,这极大的改善了用户体验。 Netbeans团队注重质量而不是数量,并且下定决心替换模型平台以提高开发效率,我们应该向NetBeans的团队和其完美的IDE致敬。

  二、 火爆的NetBeans

  自从NetBeans发布最主要的版本以来,在这一年半的时间里,在Java IDE的世界里又引发了一次开源IDE的风潮。

  在开源的IDE世界里,Eclipse一度鹤立鸡群,引领无数的风骚。然而,即将发布的NetBeans最新版本,将重新点燃一场IDE拱应商之间的火拼。

  NetBeans 6.0将定于2007年11月份发布。而我们热情的评论家们,基于对刚刚发而的NetBeans 6.0 beta版本的好感,对NetBeans6.0可谓是赞不绝口,正歌颂不用交税。在过去的一年半的时间里,NetBeans可谓是洗心革面,重新做人,开发了很多的附加模块,而且功能很强大,正在打造一款所谓轻量的、快速的、易配置的IDE.

  2007年的Bossie Awards关于IDE工具奖项中,NetBeans夺得桂冠。在新版的NetBeans 6.0中,包含有众多令人耳目一新的特性,同时为动态语言开发增加了强有力的支持。新版NetBeans用户界面日趋友好,并集成了Matisse GUI设计器、应用性能分析器等为开发者提供便利的工具,还具备与Eclipse类似的插件技术和富客户端应用发布。代码感知在NetBeans中也得到了加强,开发者可以通过上下文提示,快速补全系统API调用代码及自定义类。

  尽管在市场占有率方面,Eclipse一直占据上风,并且随着版本不断发展,Eclipse逐渐成为开发的基础设施平台而非一款单纯的IDE工具,具有数量众多的商业厂商为其提供插件支持。但取得长足进展的NetBeans赢得2007年的Bossie奖项也并非偶然。

  JavaEye站长Robbin对于NetBeans为Rails开发带来的益处更是溢于言表:总得来说,NetBeans还是最值得期待的IDE,等到2007年底,NetBeans 6.0正式发布,Ruby插件支持更加成熟以后,我想我会转移到NetBeans上面来。另外,非常重要的一点:Sun公司从JDK 6以后,致力于JVM平台化发展道路,大力拓展脚本语言在JVM平台的支持力度,而且Sun给予了JRuby官方支持,所以NetBeans平台的脚本框架和RoR支持是有足够的商业推动力的,前景应该是最好的!

  NetBeans真是红火得不行了,不断传出好消息。NetBeans Ruby IDE被众口一词的评价为目前最优秀的Ruby IDE.大家对NetBeans 6的评价尤其高,许多人在等待NetBeans 6的正式发版。就连一名Eclipse fans的博客上都说,不得不承认NetBeans的进步。最近他试用NetBeans Ruby IDE,对它的评价是,唯一的不满意就是NetBeans这个名字,因为Bean这个名字总是使他想起使用Weblogic时各种Java Beans蜗牛般的速度。

  更有许多人因为NetBeans的进步渐渐认识到Java最近版本5和6的进步,更多的人正在转移到最新的Jjava平台上来。这对java来说是个好消息,因为如果没有一个核心有竞争力的平台,Jjava可能会重蹈Linux当前四分五裂、一盘散沙的局面。

  总之一句,NetBeans就是快火得不行了。NetBeans注定会在2007的IDE世界留下最浓重的一笔。那我们深爱的Eclipse又怎样呢?
三、 NetBeans的优势

  在NetBeans5.5中,Sun公司虽然也是下一老血本,但挑剔的程序员们并不领情。批评NetBeans5.5把精力过多的放在一些开源IDE核心功能之外的功能上了。而这次,在NetBeans6.0据传是看准了耙,好钢用在刀刃上,集中精力于核心功能模块的开发上,特别是软件整体性能方面的提升。

  在NetBeans6.0中,整合了Java SE6的二大突出新特性,JSR269——插入式注解处理API(Pluggable Annotation Processing API),提供一套标准API来处理Annotations(JSR 175),实际上JSR 269不仅仅用来处理Annotation,更强大的功能是它建立了Java 语言本身的一个模型;以及JSR199——Compiler API,Compiler API结合反射功能就可以实现动态的产生Java代码并编译执行这些代码,有点动态语言的特征。这个特性对于某些需要用到动态编译的应用程序相当有用。

  与任何其他应用程序一样,IDE 应该具有一个美观的、高效的且多产的 GUI.NetBeans 6.0 在这方面迈出了一大步。NetBeans 6.0重新设计的图标,并且删除了 SDI windowing 选项(来自旧版 NetBeans 的继承)。现在已经拥有不可停靠/浮动窗口。最后,在 QA 前端,新的 Report Exception 工具简化了将详细错误数据报告给 NetBeans 开发人员的过程,而 UI Gestures Collector 可以提交有关 IDE 使用模式的数据。该数据不仅对研究有所帮助,而且有助于实现一种不基于 Math.random() 的“每日一帖”提示系统。

  NetBeans除了拥有Eclipse的很多优势外,还具有以下一些个性:

  (1) 有组织的开发和升级

  这是NetBeans最重要的优势。由一家公司负责完全的维护和开发,明显地,可以使Bug数明显减少,并且会保证界面的一致性。而Eclipse由开源组织负责开发和维护,由于参与的人员水平不同,习惯也不同。这就会给为Eclipse的发展带来一些影响。也许现在Eclipse升级变慢和这个有一定的关系。

  (2) 发布周期比Eclipse短

  最近一、二年,Eclipse的升级速度不知怎么突然慢了下来。而这却被Sun抓住了机会。而最近,NetBeans突然加快升级的速度。这可是要跟Eclipse在时间上打一场硬仗。

  (3) 用户界面一致性和可视化开发

  由于NetBeans使用了Java标准的SWING作为自己的图形引擎,所以NetBeans的界面看起来非常统一。而且NetBeans还集成了用于可视化开发程序的功能(这在Eclipse中要使用插件才能实现)。

  (4) 更好的跨平台兼容性

  NetBeans采用了Java的SWING,可以很容易地运行在各种操作系统平台上,且随着JDK的不断升级,SWING的性能会提高。而Eclipse的SWT是IBM负责开发的,因此,SWT实际上和Java没什么关系,只是穿上了一件Java的外衣而已。可以从JDK5看出,在JDK5中SWING的性能有了明显的提高,而在JDK5中SWT的性能却没有一点改进。

  NetBeans 6.0 带来了大量新功能和改进功能,成为主流版本当之无愧。如果说NetBeans 5.5 很有广度,那么NetBeans 6.0 具有同样程度的深度。更新到最新版本的开发人员不仅将获得对所有类型 Java开发的广泛支持,还将拥有每个重要功能区域中的最佳功能集。

  四、 小结

  在IDE开发工具竞争激烈的今天,Sun也逐步的调整了Netbeans市场战略,在今年JavaOne大会上,Netbeans高级宣传官 Tim Boudreau也谈到了Netbeans以后发展动向。NetBeans并不一定要局限于Java IDE平台——它对于Java已经有了很大地支持,那是人们首先要考虑的事情。但是就NetBeans目前的发展来看,它会成为一个与语言无关的平台。对于所有开发人员来说,NetBeans 下一个版本中的新功能和改进使其成为更好的 IDE 选择。从编辑到浏览、版本控制、构建、调试、性能分析或可视化设计,对于所有人来说,新版本的 NetBeans 将面貌一新。

  Eclispe的流行完全是IBM在它萌芽阶段进行资金赞助的产物,有了IBM这个蓝色巨人的支持,它的前途无可限量,但是也不能小看了Sun公司的这个冷面杀手,有Sun这个强有力的后盾,双方以后的竞争只会更加的激烈。
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页