Java吸引了越來越多的商業(yè)機(jī)構(gòu)和軟件開發(fā)商,但在贏得最終勝利之前Java還需要克服一些主要障礙。
最近的研究表明 微軟 公司開發(fā)的編程技術(shù)仍然是軟件開發(fā)商采用的最重要語言。但Java正在逐步地拉近同微軟編程語言的距離。根據(jù)2000年度IDC研究報(bào)告,當(dāng)時(shí)有300萬人在使用C 和C++ 作為自己的主要編程語言,Visual Basic開發(fā)人員有230萬,Java開發(fā)人員則只有120萬。市場(chǎng)研究公司Evans Data則報(bào)告說,使用Java的人越來越多,而 C和C++開發(fā)人員的數(shù)量則在顯著減少。
這一趨勢(shì)在學(xué)術(shù)界也得到了反映。在麻省理工學(xué)院,計(jì)算機(jī)科學(xué)系早在1997年就用Java 取代了微軟的C++作為學(xué)生必須掌握的主要軟件語言。今年春季,加州大學(xué)伯克利分校就開設(shè)了25門Java課程,而針對(duì)微軟編程語言的課程只有7門。麻省理工學(xué)院的副教授Daniel Jackson說:“照我看,Java將很快取代其他所有的編程語言,尤其是C++。”這位學(xué)者提醒注意,大學(xué)生甚至在上Java課程之前就在逐漸地自學(xué)Java了。在2年的時(shí)間里,學(xué)院將把針對(duì)高中生開設(shè)的大學(xué)級(jí)學(xué)分課程的高級(jí)測(cè)驗(yàn)由C++轉(zhuǎn)到Java。
但是,甚至在面臨如此令人鼓舞的跡象同時(shí),分析家和軟件公司官員仍然認(rèn)為若干因素會(huì)阻礙Java的成長(zhǎng)。第一個(gè)可想而知,這就是同微軟公司之間展開的、不可避免的競(jìng)爭(zhēng),微軟已經(jīng)發(fā)布了稱為C#的編程語言,C#非常類似Java,而且它還推出了一個(gè)部分模擬Java的Internet軟件策略。
第2個(gè)障礙來自Java陣營(yíng)的內(nèi)部,很多軟件公司所發(fā)布的產(chǎn)品并不遵守業(yè)內(nèi)達(dá)成的一致標(biāo)準(zhǔn)。盡管大大小小的軟件不兼容最后都會(huì)得到一定的處理,但是,Java的支持者們害怕這種不受約束的軟件開發(fā)可能會(huì)引發(fā)混亂和潛在的沖突,結(jié)果令這項(xiàng)技術(shù)的開發(fā)者們無所適從。
最后,Java自身的復(fù)雜性也一直是一個(gè)問題。分析家說,為了突破掌握高級(jí)開發(fā)技能的程序員的狹窄范圍而令主流開發(fā)者接受Java,軟件制造商不得不在易用編程工具領(lǐng)域被微軟牽著鼻子走:允許程序員只需要點(diǎn)按鼠標(biāo)之類的操作即可開發(fā)Java程序。特別地,他們對(duì)稱為企業(yè)Enterprise Java Bean標(biāo)準(zhǔn)大加批評(píng),該標(biāo)準(zhǔn)實(shí)際上是通過重用小部分軟件來節(jié)約開發(fā)時(shí)間。更容易使用的Java工具將有助于增加使用這一語言的軟件開發(fā)者數(shù)量,從而產(chǎn)生越來越大而且越來越健康的Java市場(chǎng)。 Giga信息集團(tuán)的分析員Mike Gilpin聲稱:“要博得開發(fā)者和獨(dú)立軟件供應(yīng)商的青睞就必須考慮以上的問題。”
自從Sun Microsystems公司在7年前發(fā)明Java技術(shù)至今,軟件開發(fā)程序員普遍接受了Java,首先是應(yīng)用于網(wǎng)站建設(shè),其后又進(jìn)入了企業(yè)因特網(wǎng)和電子商務(wù)領(lǐng)域。今天,Java又在諸如蜂窩電話、在線游戲、股票信息等、餐館定位乃至實(shí)時(shí)信息處理等新興市場(chǎng)中大展身手。
盡管Java最初目標(biāo)是取代PC上占霸主地位的Windows,而且這一目標(biāo)完全失敗了,但是,擁躉Java的陣營(yíng)已經(jīng)能讓Java技術(shù)得到盡可能地普及。Java今天的成功部分地歸于開發(fā)者和客戶,其實(shí),他們僅僅希望世界上除了微軟還應(yīng)該有其他選擇,微軟巴不得從手持設(shè)備到企業(yè)服務(wù)器,在任何設(shè)備上都最好運(yùn)行著Windows。
作為反對(duì)Windows霸權(quán)陣營(yíng)的一員,Sun發(fā)誓要讓Java運(yùn)行在任何設(shè)備上,而且所有的程序都不必重寫,這就是赫赫有名的“只寫一次,處處可行”原則,顯然該原則同微軟堅(jiān)持世界上只有它的操作系統(tǒng)這一戰(zhàn)略是完全對(duì)立的。Java很快就贏得了其他微軟之?dāng)车闹С郑热鏘BM、Oracle和BEA Systems等。
然而,這種編程語言實(shí)際上并沒在完全實(shí)現(xiàn)多重設(shè)備上運(yùn)行同一代碼的承諾。結(jié)果,商業(yè)機(jī)構(gòu)這才覺察到,相比它們?cè)谶x擇Java時(shí)所做的估計(jì),現(xiàn)在花得的時(shí)間和金錢比預(yù)想的多得多。
Meta集團(tuán)分析員Zachmann評(píng)價(jià)說:“‘只寫一次,處處可行’這條原則在服務(wù)器端壓根就沒有起過作用。”
許多人認(rèn)為這個(gè)問題源自Java標(biāo)準(zhǔn)的通過被拖延得太久,這個(gè)標(biāo)準(zhǔn)花了12到18個(gè)月的時(shí)間才完成。軟件開發(fā)商又面臨著爭(zhēng)取新客戶的競(jìng)爭(zhēng)壓力所以無法等待那么長(zhǎng)的時(shí)間。因此它們只能定期地改進(jìn)和發(fā)布基于非標(biāo)準(zhǔn)技術(shù)的Java軟件。
大多數(shù)的Java軟件開發(fā)商把它們的尖端技術(shù)提交給Java Community Process,這是一個(gè)由Sun和其它Java公司參與發(fā)起的組織,負(fù)責(zé)研究和制定未來的Java技術(shù)標(biāo)準(zhǔn)。如果提交的技術(shù)得到了標(biāo)準(zhǔn)認(rèn)可,其他的軟件開發(fā)商就可以采用這一技術(shù)了。但是當(dāng)新標(biāo)準(zhǔn)真被制定出來的時(shí)候,Java公司卻又發(fā)明出了雖然不是標(biāo)準(zhǔn)但卻給它們帶來競(jìng)爭(zhēng)力的新技術(shù)。
為了在有利可圖的電子商務(wù)軟件市場(chǎng)獲取有利地位,BEA、IBM和其它Java軟件開發(fā)商都擺弄出了如此之多的非標(biāo)準(zhǔn)技術(shù)并應(yīng)用在們的應(yīng)用服務(wù)器和其他產(chǎn)品之中,使之運(yùn)行更快而且更可靠。這樣一來,客戶不得不關(guān)心兼容性的問題,能在某Java開發(fā)商的應(yīng)用服務(wù)器上運(yùn)行的軟件卻不能100%在其他開發(fā)商的產(chǎn)品上運(yùn)行。
Iona公司產(chǎn)品主任Simon Pepper認(rèn)為:“我們不得不關(guān)注這一不兼容事實(shí),我相信,正是這一原因使Java陷入分裂狀態(tài)而且令Java開發(fā)者感到無所適從,所謂的‘編寫一次,處處可行’的目標(biāo)并沒有實(shí)現(xiàn)。結(jié)果令Java在兼容性能上的良好形象大大受損。同時(shí)卻為微軟打開了攻城奪地的方便之門。如果技術(shù)是分裂的,而且開發(fā)商也是分裂的,這肯定會(huì)令開發(fā)者懷疑Java是否真是一種優(yōu)秀的技術(shù)。”
摘自
:http://www.zdnet.com.cn
posted on 2006-01-20 23:04
水秀清靈 閱讀(144)
評(píng)論(0) 編輯 收藏 所屬分類:
學(xué)習(xí)筆記