直播中
客戶端事件數(shù)據(jù)由底層框架截獲并發(fā)送到服務(wù)器。這意味著應(yīng)用界面不再受瀏覽器類型的約束,意味著有大量UI工具可供使用,意味著用戶可以充分發(fā)揮現(xiàn)有的窗體制作技巧。如果應(yīng)用沒有必要做到瀏覽器中立,那么它就可以利用IE瀏覽器的各種特色。有了Web Forms,我們將能夠更輕松地為那些具有Web功能的應(yīng)用構(gòu)造出更好、更豐富的用戶界面。
VB.NET中另外一個面向Web的重要特色是Web服務(wù)。在Microsoft的宣傳中,Web服務(wù)被推崇為之所以要采用.NET技術(shù)的重要理由之一。事實上,從根本上來說Web服務(wù)是一種類似COM的、通過Web服務(wù)器和標(biāo)準(zhǔn)協(xié)議發(fā)布的對象。當(dāng)然,Web服務(wù)并不是嚴(yán)格意義上的COM對象,但兩者作用方式類似。Microsoft期待著各類公司都以Web服務(wù)方式提供服務(wù),期待著未來創(chuàng)建應(yīng)用時只需簡單地“粘合”各種服務(wù),就象今天借助Office和支持VBA的應(yīng)用通過VBA構(gòu)造新應(yīng)用一樣簡單快捷。
從Microsoft PDC(Professional Developers Conference,專業(yè)開發(fā)者大會)的一個演示中,我們可以看出Microsoft希望開發(fā)者如何粘合各種Web服務(wù)。在這個演示中,一個假想的醫(yī)生以Web服務(wù)形式發(fā)布其時間表,示范如何通過Web用智能電話和醫(yī)生訂立約會。Visual Basic.NET還允許查詢服務(wù)器,提取服務(wù)器支持的所有服務(wù)的元數(shù)據(jù)。Web服務(wù)描繪了Microsoft野心勃勃的戰(zhàn)略,然而,唯有時間才能告訴我們Microsoft是否在大范圍推廣Web服務(wù)上取得了成功。但不管如何,這個想法本身看來有著美好的前途。
為了減少與封裝和分發(fā)應(yīng)用有關(guān)的問題,如令人畏懼的DLL Hell問題(在共享DLL的應(yīng)用之間,由于一個應(yīng)用的升級而導(dǎo)致另一個應(yīng)用無法正常運行的情況),Microsoft作出了種種努力,它同樣也帶來了美好的希望。所有.NET應(yīng)用都封裝為程序集(Assembly)。程序集包含了描述各種運行需求的元數(shù)據(jù)。這種元數(shù)據(jù)稱為manifest,其中包括:程序集的標(biāo)識信息(名稱,版本等),列出了所有文件依賴關(guān)系以及文件位置和文件版本的文件清單,外部依賴信息(帶有描述程序集必須用到、但開發(fā)者沒有自己創(chuàng)建的DLL以及其他資源的數(shù)據(jù))。程序集是通過manifest自我描述的,因此.NET應(yīng)用的運行并不需要修改注冊表。換句話說,.NET應(yīng)用不再要求注冊組件。在最理想的情況下,客戶機器上已經(jīng)有了.NET運行環(huán)境,部署一個復(fù)雜的應(yīng)用簡單到只需復(fù)制一個文件夾到目標(biāo)機器。使用程序集的另外一個優(yōu)點是:不同的應(yīng)用可以擁有同一DLL的不同版本,所有這些應(yīng)用都互不干涉地在同一臺機器上運行。如果它能夠按照預(yù)期那樣獲得成功,DLL Hell和可怕的版本問題都將成為歷史。
Visual Basic.NET代表著VB的一次重大飛躍。盡管如此,把VB.NET看成是一種有著熟悉語法的新語言而不是對舊語言的簡單升級或許是對待VB.NET較為正確的心態(tài)。