我不知道怎么翻譯這個ecosystem,在生物學(xué)上,這個詞的解釋是:生態(tài)系統(tǒng)。 人生活在這個大自然中,其實也就是生活在大自然這個生態(tài)系統(tǒng)中。 一個健康發(fā)展的ecosystem,要具有它最基本的元素(比如水,陽光,空氣),各個組成部分要和諧的發(fā)展,互相合作(就像你的身體內(nèi)的每個器官)。
Java世界到目前為止,也是一個和諧發(fā)展的生態(tài)系統(tǒng),Java語言和Java平臺是它的基礎(chǔ)元素,各類廠商(不管是軟件的還是硬件的)基于Java開發(fā)了大量的應(yīng)用系統(tǒng),JCP的運作則在保證這個系統(tǒng)的良性發(fā)展。
那么Java開發(fā)工具,最重要的IDE部分呢? Eclipse還是NetBeans?ZDNet的專欄作者David Berlind在JavaOne 2005期間,寫個一篇報道:Might JavaOne have been NetBeans' last stand? 他指出,Eclipse在“事實”上已經(jīng)贏過了NetBeans,原因就是Eclipse健康發(fā)展的ecosystem。(以下部分摘錄于David的專欄,做了部分的翻譯和刪減)。
“…… Like operating systems, IDEs are the foundations of their own ecosystems. The word "integrated" in "integrated development environment" is there because of how easy IDEs make it for developers to mix and match their favorite development tools. Coding tools, modeling tools, workflow tools, mobile tools, etc. There are hundreds of specialized tools out there that make it easier for developers to develop correspondingly specialized applications. The beauty of the IDE is how all of these tools can be snapped together like a jigsaw puzzle and work together in one context. So, in ecosystem terms, in the same way that computer buyers like to buy computers for which many applications exists (eg: Windows computers), developers will not only gravitate towards IDEs that they like, but the ones for which the most third party support and tools exist (known as IDE plug-ins). ”這就像買電腦一樣,買一臺電腦,并不是只是為了買那一套硬件,也不主要是看重它的CPU,內(nèi)存和硬盤,更主要的是需要這臺電腦可以運行大量的應(yīng)用程序(這可能是為什么絕大多數(shù)的人使用Windows,因為有大量的應(yīng)用程序可以使用)。 同樣的,對于開發(fā)者來說,當他使用一個IDE的時候,他不僅僅只是被IDE本身的功能所吸引,另一方面,就是有更多的工具(也就是IDE的插件)可以使用,有更多的其他廠商的支持(更不要說IDE本身還是免費的了)。
在今年的JavaOne 2005上,更多的廠商宣布了將支持Eclipse(暫且不提年初BEA,Oracle,MacroMedia這樣的大公司作為重量級的開發(fā)商加入Eclipse Foundation,IBM就更不用提了,它幾乎完全是Eclipse-Driven了):
- Catalyst Systems' Openmake 6.4 For Eclipse - Openmake integrates fully with version control systems from Rational, Serena and more.
- Sybase Announces Unified Eclipse-Based Application Development Environment - Using the Eclipse platform, Sybase WorkSpace offers comprehensive development tooling that automates mundane tasks and reduces the overall complexity of application development.
- BEA Systems Embraces Open Source Innovation - In addition to the support and leadership BEA has shown as a strategic member of the Eclipse Foundation, and as contributor to high-profile Apache and other open source projects, both Apache Beehive and Spring with deployment to Apache Tomcat.
- Compuware Extends Java Development Automation and Announces Eclipse Support With OptimalJ 4.0 - Compuware Corporation released Compuware OptimalJ 4.0, unveiling new process-modeling functionality and announcing support for the Eclipse open source development platform.
- Oracle Strengthens Commitment to Java Developers with Free Development Tool and Open Source Projects - Oracle is proposing to spearhead a JavaServer Faces (JSF) tooling project within the Eclipse Foundation open-source community and will also join the Apache MyFaces project as a core contributor.
- Borland to Ring In New Era of Java Innovation at JavaOne - At the conference itself, Borland will lead three sessions on topics ranging from how to leverage the Eclipse framework, to IDE extensibility, to recent innovations in JBuilder.
- ILOG Delivers Enhanced Business Rule Management for Dual-Platform Applications - ILOG Business Rule Studio 2.1 also integrates in Eclipse 3.
- NEC is the 100th Organization to Join Eclipse - The Eclipse Foundation announced that its membership has reached the milestone of 100 member organizations. NEC is the 100th organization to join the Eclipse Foundation and will join as an Add-in Provider member. NEC plans to introduce new Eclipse-based tools and plug-ins for their C++ and Java development environments.
- OC Systems Announces Hitchhiker for Eclipse - Hitchhiker is our first foray into the C/C++ space within the Eclipse ecosystem. We look forward to receiving feedback and developing future Eclipse-based products, particularly for C/C++."
- NDS Announces New OCAP Software Tool for Eclipse Development Environment - NDS Group plc announced that the new plug-in speeds open standards-based set-top box application development and offers superior debugging features. It is compliant with the latest version of Eclipse.
- Open Source Leader Exadel Extends Eclipse IDE with New Visual Editing Tools - Exadel, Inc. announced the availability of Exadel Studio Pro 3.0, an advanced enterprise-class Web application development suite designed to work with Eclipse 3.1.
BEA的CTO, Mark Carges在一次訪談中解釋了為什么這家在Java應(yīng)用服務(wù)器市場占據(jù)最大份額的公司會將自己的開發(fā)產(chǎn)品定位于Eclipse(他的訪談可以下載):
….But especially about a year ago when [Eclipse] really started to turn up, we really heard loud in clear, "But you know developers are using Eclipse based plug-ins and IDEs. It be great would be if we could take advantage of that." Not one of the companies I met said the same for NetBeans. So it was a very very simple choice. We looked at it and said at this point in time, the Eclipse organization has the right kind of open source model, it has the right meritocracy as far as how you can contribute and how code could be developed. …… Eclipse did a very nice job running themselves as an open source organization where anyone could participate. We felt very comfortable joining that organization and leveraging that for one, and two, it was what customers were asking for. It was a no brainer.原因很簡單,大量的程序員在使用Eclipse,作為BEA,再開發(fā)自己的workshop已經(jīng)不合適了。 擁抱Eclipse是最好的辦法。 既有了一套標準的IDE規(guī)范,又有Eclipse開放源碼社區(qū)對Eclipse的貢獻,加上大量熟悉Eclipse的程序員。 作為Eclipse Web Tools的主要開發(fā)商,BEA不會不考慮到自己的WebLogic的,我相信,當WTP發(fā)布的時候(今年年底),對WebLogic的支持,將是最大的一個新功能了:Eclipse免費,WTP免費,內(nèi)置的WebLogic的支持,免費下載WL Express版本,從開發(fā)工具到應(yīng)用服務(wù)器,都有了,BEA還需要廣告去宣傳嗎?
我原先還以為,Ian說的第100個加入Eclipse Foundation的會是Sun。 我真是大錯特錯了。 第100個是NEC。 這個確實出乎我的意料,沒有想到NEC這家消費類電子產(chǎn)品的巨頭,會加入Eclipse,做和C++/Java有關(guān)的插件。 在短期之內(nèi),Sun是不會加入Eclipse的,至少我這么認為。 但是David持不同的意見。 原因是Sun在這周宣布,曾經(jīng)大力發(fā)展得JDS for Linux系統(tǒng),Sun將停止更新了,轉(zhuǎn)而開發(fā)JDS for Solaris。 所以Sun很快會放棄NetBeans(只是遲早的事情),而進入Eclipse。 我并不這么看。 Sun當初發(fā)展Linux,是看中了Linux的巨大市場,但是Linux不是Sun自己的。 當Solaris開放了源碼,得到更多的認可的時候,Sun還是回到了Solaris,因為Solaris是Sun自己的。 NetBeans其實就是Sun自己的(JavaOne 2005上,Sun推出了大量自己開發(fā)的和NetBeans相關(guān)的東西),如果Sun現(xiàn)在站在Eclipse陣線,倒是可以想見有一天Sun會回到NetBeans去。 但是現(xiàn)在Sun在NetBeans一邊,一定不會去Eclipse的。
在Bill Gates Live上看了新版的Visual Studio 2005的介紹以后,我更加深信,Eclipse的“對手”決不是NetBeans,而是Visual Studio,就像Java/Java EE的對手是.Net一樣。 Microsoft的策略很簡單,.Net是下一代的平臺,但是只有程序員才能在這個平臺開發(fā)下一代的新系統(tǒng)(當你看到Steve Ballmo聲嘶力竭的大喊著“developer,developer,developer,developer…..”的時候,你就會相信這一點)。 一定要有一個強大的開發(fā)平臺,只有這個平臺,足夠吸引程序員,才會有.Net產(chǎn)品的“量產(chǎn)”(想想當初的Visual Basic 和 Visual C++是如何影響Windows應(yīng)用程序的)。 對Java和Java EE也是一樣,程序員不可能靠Notepad來制作更多更好的系統(tǒng),Java程序員需要一個優(yōu)秀的開發(fā)平臺。 然而,僅僅一個Eclipse IDE和Eclipse Foundation是不夠的。 對Eclipse IDE本身來說,幾乎不是Visual Studio的對手。 Eclipse需要這個良性發(fā)展的ecosystem,需要大量的plug-in的支持,需要IBM,BEA,Oracle這樣廠商的支持。 那么,不久的將來,Eclipse IDE加上良好發(fā)展的plug-in,整個套件(也許叫做Eclipse Suite或者Eclipse Space)才是Visual Studio真正的競爭對手。