以文本方式查看主题 - 中文XML论坛 - 专业的XML技术讨论区 (http://bbs.xml.org.cn/index.asp) -- 『 最新动态 & 业界新闻 』 (http://bbs.xml.org.cn/list.asp?boardid=35) ---- Netbeans频出招Eclipse将以何应对? (http://bbs.xml.org.cn/dispbbs.asp?boardid=35&rootid=&id=46699) |
-- 作者:zhu_ruixian -- 发布时间:5/10/2007 7:33:00 PM -- Netbeans频出招Eclipse将以何应对? 最近Java IDE领域真是风起云涌。老牌的JBuilder已经风光不在。而最近几年火的不得了的Eclipse还没来得及体验“身处万人中央、享受万丈荣光”的滋味,就被Sun如法泡制的NetBeans给抢了镜头。现在Sun也想开了,放下了自己的架子来了个“全体复制”,将Eclipse的几乎所有的特点都搬到了NetBeans中。如插件、开源、免费、Web开发等等。看来Sun也学会IBM的招术了。既然在Java上挣不到什么钱,那就干脆来搅局。万一能浑水摸鱼捞上一笔也不错。最近有消息称,NetBeans和Eclipse在2007年都会推出各自的新版本,看来,今年Java IDE市场又要掀起一场腥风血雨的战争了。 一、Java IDE惊喜不断,NetBeans和Eclipse在2007年将唱主角 自从JBuilder失去了Java IDE王者的位置后,这个王位总得要人来坐。一直在旁的IBM对这个市场早就虎视眈眈,也许IBM心里说“JBuilder终于不行了”,就在这时,IBM将自已多年研发的Eclipse免费,开源,并给了开源社区很大的技术帮助。也许我们应该管Eclipse叫JBuilder终结者。Eclipse的出现给这个已经失去防护罩的“太空堡垒”最致命的一击。Jbuilder从此再也没有从新升空的可能了。 虽然Java是Sun做的,但Java IDE却从来没Sun的份。尽管Sun有一个Java Visual Age,但这个东西其实就是个高级记事本。可Sun不会这么永远不甘寂寞。经过多年的努力,Sun终于推出了自已的新的Java IDE:NetBeans。这个工具的前身就是Visual Age。在NetBeans刚推出不久,由于NetBeans性能和功能上的原因,一直也没象Eclipse那么出名。不过在2006年,Sun推出了NetBeans5.5,这个版本不仅功能强大,而且性能得到了很大的提高。同时和Eclipse一样,也是免费开源的。 自从NetBeans开始逐渐升温后,就开始和Eclipse分庭抗挣了。甚至在网上出现了很多类似于评论Eclipse和NetBeans最终谁能取代谁的文章。甚至有一些人从来没用过NetBeans或Eclipse,就将它们批得一无是处,真是可笑之极。 在2006年,Eclipse和NetBeans谁都没有占到上风,但在2007年,NetBeans将推出人们宣传已久的NetBeans6,而Eclipse也将推出Eclipse的最新版Eclipse3.5。虽然现在还看不出谁能成为IDE的主宰者,但有一点可以肯定,在2007年Java IDE的主角将是NetBeans和Eclipse。至于其他的Java IDE,大概也只有随声附和的份了。 惊喜过后,就是围绕着Java IDE市场的激烈的争夺了。自从NetBeans成为众人眼中的明星后,Sun终于意识到自已这回宝押对了。于是使尽浑身解术将NetBeans推上王位。NetBeans采取了和Eclipse同样的策略:免费开源。自从NetBeans采用了这些策略后,它的使用量节节攀升。图1为2006年各种流行开发工具的使用情况: 图1 各种流行开发工具的使用情况 NetBeans除了拥有Eclipse的很多优势外,还具有以下同个特性: 发布周期比Eclipse短 Eclipse曾被认为是升级最快的开发工具。但最近一、二年,Eclipse的升级速度不知怎么突然慢了下来。而开源社区解释说是为了更好地保证Eclipse的质量。而这却被Sun抓住了机会。在以前,NetBeans的升级并不快,而最近,NetBeans突然提高的升级的速度。我想是要跟Eclipse在时间上打一场硬仗。 用户界面一致性和可视化开发 如果要发布基于NetBeans的程序,厂商并不需要发布整个新版本的产品,而只需要在服务器上更新,并强制用户下载新版本。这种更新是异步递增进行的,因此,不会明显地干扰用户的工作。 更好的跨平台兼容性 由于NetBeans采用了Java的SWING,因此,它可以很容易地运行在其他各种操作系统平台上,如Windows、Linux、Mac OS-X、Solaris、HPUX、OpenVMS、OS/2等。而且随宜着JDK的不断升级,SWING会随着JDK性能的提高而提高,而Eclipse的SWT就不一样了。由于SWT是IBM负责开发的,因此,SWT实际上和Java没什么关系,只是穿上了一件Java的外衣而已。我们可以从JDK5就可以看出来,在JDK5中SWING的性能有了明显的提高,而在JDK5中SWT的性能却没有一点改进。 同时使用SWING还有另外一个好处,就是在发布程序时,不再需要专用的二进制库或组件,只需要目标机器上有JRE即可。 有组织的开发和升级 这是NetBeans最重要的优势。就象微软的Visual Studio一样,只由微软负责开发,虽然有很多人抨击微软的垄断,但这种开发和维护的垄断的却会对软件的发展非常有利。而NetBeans就象微软阵营的Visual Studio一样,由一家公司负责完全的维护和开发。这样一来,可以使bug数明显减少,并且会保证界面的一致性。而Eclipse由开源组织负责开发和维护,由于参与的人员水平不同,习惯也不同。这就会给为Eclipse的发展带来一些影响。也许现在Eclipse升级变慢要和这个有一些关系。 NetBeans虽然有很多Eclipse不具备的功能和特点,但Eclipse毕竟是先来的,所谓先入为主。Eclipse在出道这几年也积累了很多的资本。NetBeans要想一下子打倒Eclipse也不那么容易。 正所谓天下武功出少林,现在很多开发工具,无论是国外的,还是国内的,有很多都是基于Eclipse的,如MyEclipse、金蝶的开发工具,普元的组件开发工具,甚至大名鼎鼎的JBuilder也放下架子来靠近Eclipse,最近新出的JBuilder2007其实就是Eclipse加上很的插件。可见,现在Eclipse已经成为很多开发工具的父工具了。NetBeans要想抢过Eclipse的饭碗,还得多下功夫。 Eclipse要对付NetBeans的方法还不止这些。由于Eclipse采用了SWT,因此,Eclipse就具有了访问操作系统层的能力和强大的集成能力。Eclipse却可以即只是简单的调用和返回那样的轻量的集成,也可以集成其他的软件,如Word、Excel等。从Eclipse的这些特定可以看出,Eclipse并不是好惹的。至于最终Eclipse和NetBeans谁能胜出,还得看今年它们的表现了。 我相信很多用过NetBeans的人都有一种经历了很长一段时间的黑暗期。当初的Netbeans让所有开发者爱恨交加。随着JBuilder的光辉慢慢退却和NetBeans的功能和易用性逐渐加强。人们又把目光集中Netbeans身上。在NetBeans5.5发布后,Netbeans的宣传官Tim Boudreau谈论了NetBeans的未来发展方向。 Frank Sommers说:“在未来的NetBeans中将会增强图形用户接口编辑器Matisse。因为要在多平台上工作,Java UI非常有趣,对于每个平台,都有用户接口设计向导。苹果公司的Mac系统上有,微软的Windows上有,同时还有Java Look And Feel向导。UI标准是很伟大的,它们对于用户使事情看上去很熟悉。同时,每个人对待在一个平台上如何去做是正确的,会有些不同,例如,你应当在离窗体边缘多远放置一个标签。 同还Sun还会对布局进行改进,Matisse通过与GroupLayout的相互作用而工作,当你设计你的UI时,无论你在什么平台下设计,Matisse都会给出你它建议的位置作为指导。当你转移到另一个平台上时,布局管理器将使用此平台下的设计指导,Swing会使用正确的边界与字体。这就在很高的水平上解决了“Java-app-as-alien”的神话说法,使开发在哪里都可以看上去是正确并且变得容易”。 NetBeans中的模块系统RCP允许你通过在它们自己的JAR外部,不是公共的类把一个应用的因素分成不同的部分。这个模块能够声明其它模块允许从什么包中调用类,其它包中的类仅在它们所在的JAR中是公共的。遵循这些路线,也许会在Java 7中作为一个语言特征出现,NetBeans RCP已经为桌面应用提供了这些。 随着JDK的不断升级,我认为NetBeans的功能也会随着JDK的增强而增强。也许在未来几年后,Eclipse和NetBeans会成为开源界的两大开发工具阵营,当然,到那时,这两个工具并不只是开发Java的IDE,它们将是全能的,也就是说,除了开发Java,它们也可以开发象C/C++、C#这样的语言,甚至是动态语言,如ruby、php等。也许在未来数年内它们还将继续争斗,至于最终会鹿死谁手,就让我们拭目以待吧!! |
W 3 C h i n a ( since 2003 ) 旗 下 站 点 苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》 |
296.875ms |