Java的內傷 (轉)

gugu99發表於2007-08-15
Java的內傷 (轉)[@more@]

作者: Z CHINA
Monday, April 1 2002 12:02 PM

吸引了越來越多的商業機構和開發商,但在贏得最終勝利之前Java還需要克服一些主要障礙。

最近的研究表明 公司開發的技術仍然是軟體開發商採用的最重要語言。但Java正在逐步地拉近同微軟程式語言的距離。根據2000年度IDC研究報告,當時有300萬人在使用C 和C++ 作為自己的主要程式語言,開發人員有230萬,Java開發人員則只有120萬。市場研究公司Evans Data則報告說,使用Java的人越來越多,而 C和C++開發人員的數量則在顯著減少。

這一趨勢在學術界也得到了反映。在麻省理工學院,科學系早在1997年就用Java 取代了微軟的C++作為學生必須掌握的主要軟體語言。今年春季,加州大學伯克利分校就開設了25門Java課程,而針對微軟程式語言的課程只有7門。麻省理工學院的副教授Daniel Jackson說:“照我看,Java將很快取代其他所有的程式語言,尤其是C++。”這位學者提醒注意,大學生甚至在上Java課程之前就在逐漸地自學Java了。在2年的時間裡,學院將把針對高中生開設的大學級學分課程的高階測驗由C++轉到Java。

但是,甚至在面臨如此令人鼓舞的跡象同時,分析家和軟體公司官員仍然認為若干因素會阻礙Java的成長。第一個可想而知,這就是同微軟公司之間展開的、不可避免的競爭,微軟已經發布了稱為的程式語言,C#非常類似Java,而且它還推出了一個部分模擬Java的Internet軟體策略。

第2個障礙來自Java陣營的內部,很多軟體公司所釋出的產品並不遵守業內達成的一致標準。儘管大大小小的軟體不相容最後都會得到一定的處理,但是,Java的支持者們害怕這種不受的軟體開發可能會引發混亂和潛在的衝突,結果令這項技術的開發者們無所適從。

最後,Java自身的複雜性也一直是一個問題。分析家說,為了突破掌握高階開發技能的員的狹窄範圍而令主流開發者接受Java,軟體製造商不得不在易用程式設計工具領域被微軟牽著鼻子走:允許程式設計師只需要點按滑鼠之類的操作即可開發Java程式。特別地,他們對稱為企業Enterprise Java Bean標準大加批評,該標準實際上是透過重用小部分軟體來節約開發時間。更容易使用的Java工具將有助於增加使用這一語言的軟體開發者數量,從而產生越來越大而且越來越健康的Java市場。 Giga資訊集團的分析員Mike Gilpin聲稱:“要博得開發者和獨立軟體供應商的青睞就必須考慮以上的問題。”

自從Sun Microsystems公司在7年前發明Java技術至今,軟體開發程式設計師普遍接受了Java,首先是應用於網站建設,其後又進入了企業因特網和電子商務領域。今天,Java又在諸如蜂窩電話、線上遊戲、股票資訊等、餐館定位乃至實時資訊處理等新興市場中大展身手。

儘管Java最初目標是取代PC上佔霸主地位的,而且這一目標完全失敗了,但是,擁躉Java的陣營已經能讓Java技術得到儘可能地普及。Java今天的成功部分地歸於開發者和客戶,其實,他們僅僅希望世界上除了微軟還應該有其他選擇,微軟巴不得從手持裝置到企業,在任何裝置上都最好執行著Windows。

作為反對Windows霸權陣營的一員,Sun發誓要讓Java執行在任何裝置上,而且所有的程式都不必重寫,這就是赫赫有名的“只寫一次,處處可行”原則,顯然該原則同微軟堅持世界上只有它的操作這一戰略是完全對立的。Java很快就贏得了其他微軟之敵的支援,比如IBM、和BEA Systems等。

然而,這種程式語言實際上並沒在完全實現多重裝置上執行同一程式碼的承諾。結果,商業機構這才覺察到,相比它們在選擇Java時所做的估計,現在花得的時間和金錢比預想的多得多。

Meta集團分析員Zachmann評價說:“‘只寫一次,處處可行’這條原則在伺服器端壓根就沒有起過作用。”

許多人認為這個問題源自Java標準的透過被拖延得太久,這個標準花了12到18個月的時間才完成。軟體開發商又面臨著爭取新客戶的競爭壓力所以無法等待那麼長的時間。因此它們只能定期地改進和釋出基於非標準技術的Java軟體。

大多數的Java軟體開發商把它們的尖端技術提交給Java Community Process,這是一個由Sun和其它Java公司參與發起的組織,負責研究和制定未來的Java技術標準。如果提交的技術得到了標準認可,其他的軟體開發商就可以採用這一技術了。但是當新標準真被制定出來的時候,Java公司卻又發明出了雖然不是標準但卻給它們帶來競爭力的新技術。

為了在有利可圖的電子商務軟體市場獲取有利地位,BEA、IBM和其它Java軟體開發商都擺弄出了如此之多的非標準技術並應用在們的應用伺服器和其他產品之中,使之執行更快而且更可靠。這樣一來,客戶不得不關心相容性的問題,能在某Java開發商的應用伺服器上執行的軟體卻不能100%在其他開發商的產品上執行。

Iona公司產品主任Simon Pepper認為:“我們不得不關注這一不相容事實,我相信,正是這一原因使Java陷入分裂狀態而且令Java開發者感到無所適從,所謂的‘編寫一次,處處可行’的目標並沒有實現。結果令Java在相容上的良好形象大大受損。同時卻為微軟開啟了攻城奪地的方便之門。如果技術是分裂的,而且開發商也是分裂的,這肯定會令開發者懷疑Java是否真是一種優秀的技術。”

摘自

整理


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10748419/viewspace-958584/,如需轉載,請註明出處,否則將追究法律責任。

相關文章