XML Web服務(wù)并未成為普及.NET的導(dǎo)火索
此前人們一直在想:“對(duì).NET來說,是否存在不同于Java的、獨(dú)特的應(yīng)用領(lǐng)域和市場?”。
業(yè)內(nèi)普遍認(rèn)為,微軟新一代系統(tǒng)構(gòu)筑環(huán)境--.NET Framework是在研究Java的基礎(chǔ)上開發(fā)出來的。不僅功能和架構(gòu)相似,而且由于是在Java之后開發(fā)出來的,因此Java所沒有的功能更是隨處可見。比如在Web應(yīng)用中實(shí)現(xiàn)事件驅(qū)動(dòng)型應(yīng)用程序功能等。
不過雖說如此,如果只是告訴用戶“.NET Framework比Java好得多”,那么Java開發(fā)人員特意轉(zhuǎn)而使用.NET Framework的動(dòng)機(jī)不會(huì)太強(qiáng)。
由于Java已經(jīng)先行積累了廣泛的應(yīng)用成果,積累了很多足以彌補(bǔ)其缺點(diǎn)的經(jīng)驗(yàn)以及平臺(tái)工具。只要不出現(xiàn)Java難以應(yīng)用的用途和市場,那么.NET Framework就很難阻止Java的進(jìn)一步發(fā)展。
.NET的優(yōu)勢(shì):企業(yè)信息系統(tǒng)*可自行編程
剛開始,微軟就把易于開發(fā)XML Web服務(wù)作為.NET的優(yōu)勢(shì)而大加宣傳。以XML Web服務(wù)為前提而設(shè)計(jì)的.NET 與Web服務(wù)具有極高的親和性。但XML Web服務(wù)的產(chǎn)生卻比較晚。盡管業(yè)內(nèi)對(duì)它的期待和關(guān)注程度較高,但由于可充分利用XML Web服務(wù)的“可賺錢的”業(yè)務(wù)模式尚未確立,所以目前與Web站點(diǎn)相比其市場仍微不足道。其中,Java方面也正在加緊完善便于開發(fā)XML Web服務(wù)的功能。
那么,是否存在.NET的獨(dú)特用途呢?筆者通過采訪所得到的一個(gè)答案是:.NET開發(fā)工具--Visual Studo.NET的易用性使得它在Java很難實(shí)現(xiàn)的“用戶企業(yè)(信息系統(tǒng)*)也可編程的系統(tǒng)”上超人一頭。筆者認(rèn)為可能還存在其他這樣的領(lǐng)域。當(dāng)然,盡管.NET的標(biāo)準(zhǔn)語言VB.NET和C#都與Java一樣復(fù)雜,但是Visual Studo.NET卻很好地消除了這種復(fù)雜性。
比如,NOEVIR只靠自己的信息系統(tǒng)*就完成了Web代理店支援系統(tǒng)的從企劃到編程的全部工作。一家系統(tǒng)集成商曾表示,此前導(dǎo)入Java系統(tǒng)的用戶企業(yè)中“選用.NET的信息系統(tǒng)*就有望自行開發(fā)或?qū)ο到y(tǒng)進(jìn)行修改”。
筆者認(rèn)為,由于Java本身較為復(fù)雜,且不易學(xué)習(xí)掌握,因此“用戶企業(yè)只負(fù)責(zé)企劃,而將編程工作完全委托給集成商的現(xiàn)象非常普遍”。
在COBOL和VB(客戶商/服務(wù)器)的全盛時(shí)期,信息系統(tǒng)*自己編程、對(duì)系統(tǒng)進(jìn)行部分修改和功能追加是很正常的事情。如果連細(xì)小的系統(tǒng)修改都要外包,那么系統(tǒng)的維護(hù)成本自然會(huì)很高,因此就將失去靈活性。甚至于還有可能削弱信息系統(tǒng)*的業(yè)務(wù)能力。說到企劃,聽起來好聽,但如果連大體的情況也不了解,恐怕與開發(fā)商交涉都很困難。這也許就是Java的一個(gè)“弊端”吧。
此外,“成本比UNIX低”以及“可以充分利用Windows技術(shù)資源”等原因也在加速.NET Framework的普及。作為客戶端/服務(wù)器系統(tǒng)的開發(fā)環(huán)境,VB的后續(xù)語言--.NET中的“Windows Form”*競爭力。越來越多的系統(tǒng)集成商開始選擇這一工具構(gòu)筑系統(tǒng)。
.NET的劣勢(shì):應(yīng)用成果少、開放性差
反過來說,.NET的劣勢(shì)則在于在大型系統(tǒng)中的應(yīng)用成果少、缺乏“開放性”。
對(duì)于應(yīng)用成果來說,今后其數(shù)量將會(huì)不斷增加。據(jù)悉,日本Kabu.com證券將在2003年度內(nèi)利用.NET Framework全面重新構(gòu)筑該公司目前利用ASP構(gòu)筑的系統(tǒng)。
在“開放性”方面又將會(huì)如何呢?Java普及的主要因素很多,但筆者認(rèn)為其中最關(guān)鍵的在于“開放性”。由于可各種OS上運(yùn)行,而且很多開發(fā)商還提供了Web應(yīng)用服務(wù)器和開發(fā)工具,因此用戶可以隨意選擇。而開發(fā)商則通過在功能和性能方面相互競爭來不斷提高產(chǎn)品水平。
而.NET Framework怎么樣呢?只要想應(yīng)用于業(yè)務(wù)系統(tǒng)中,其OS實(shí)際上則只能限于Windows。盡管微軟已經(jīng)提供了FreeBSD版.NET Framework,但其目的僅限于學(xué)術(shù)研究。
今后人們所能期待的是Mono Project。Mono Project是指完全獨(dú)立于微軟、正在開發(fā)開放源碼版.NET Framework的計(jì)劃。主導(dǎo)該計(jì)劃的是一家名為Ximian的Linux企業(yè),這家公司成功地開發(fā)了Linux標(biāo)準(zhǔn)桌面環(huán)境GNOME,目前已受到業(yè)界的廣泛關(guān)注。
2003年1月該計(jì)劃還發(fā)布了運(yùn)行Web應(yīng)用程序ASP.NET的Web服務(wù)軟件XSP。盡管很多功能仍在開發(fā)之中,但目前開發(fā)工作進(jìn)展順利。目前正面向Linux和Windows進(jìn)行開發(fā)。據(jù)Mono Project稱,由于該軟件依賴于Linux的部分不多,因此能夠輕松地向其他UNIX OS移植。
能否形成像Mono一樣的開放環(huán)境將是.NET普及的關(guān)鍵所在。微軟目前已經(jīng)向業(yè)界標(biāo)準(zhǔn)化機(jī)構(gòu)ECMA(歐洲計(jì)算機(jī)制造商協(xié)會(huì))提交了.NET 標(biāo)準(zhǔn),此舉表明微軟將采用開放標(biāo)準(zhǔn)。但目前尚不清楚此舉只是單純的一種姿態(tài),還是真的要開放.NET。這就要看微軟今后是否能夠繼續(xù)公開足夠的相關(guān)標(biāo)準(zhǔn)和信息了。