綠色資(zī)源網:您身邊最放心的安全下載站! 最新軟件|熱門排行|軟件分類|軟件專(zhuān)題|廠商大全

綠色資源網

技(jì)術教程
您的位置:首頁網絡編(biān)程Xml編程 → XML、Web服務和.NET框(kuàng)架

XML、Web服務和.NET框架

我要評論 2010/02/16 18:48:24 來源:綠色(sè)資源網(wǎng) 編(biān)輯:綠色資源站 [ ] 評論:0 點擊:336次

    應用程序開(kāi)發技術正發生著一(yī)次質的(de)飛躍,從根本上大幅度提高開發人員的(de)生(shēng)產效率,它開啟了(le)一道通向全新概念的應用程序的大門。

    在(zài)過去,開(kāi)發人員一直通過集成本地係統服(fú)務來構建(jiàn)應用程序。在這種模(mó)式下,開發人員可以訪問豐富(fù)的開發資源並能嚴格控製應用程序的行為。

    如今,開發人員在很大程度上已掙脫了這種模式的(de)束縛,致力於構建(jiàn)具有複雜結(jié)構的n層係統,這種係統能將網絡中(zhōng)各處的眾多(duō)的(de)應用程序進行(háng)集成,並大大提升(shēng)應用程序的價(jià)值。這(zhè)樣,開發人員(yuán)便可集中(zhōng)精力挖掘軟件獨特的商業價值,而(ér)不必日(rì)夜為如何構(gòu)建基本結構傷腦筋了。令人欣喜的局麵將應(yīng)運而生:軟件投放市場(chǎng)的時間大(dà)大縮短、開發人員的編程效率明顯提高,最(zuì)為根本的是開發出質量上乘的軟件。

    我們正在進入一個嶄新的計算時代,一個互聯網時(shí)代,其核心技術是“可擴展(zhǎn)標記語言”,即XML.XML創建出(chū)可供任何人從任何地(dì)方訪問和使用的功能強大(dà)的應(yīng)用程序。它極大(dà)地擴展了應用程序的功能,並實(shí)現了軟件的不間斷傳(chuán)輸。在這種大環境中,軟件已不完全是指那些從CD進行安裝的程序(xù),而是已經(jīng)演變成了一種服務:類似(sì)於調用者的ID驗證(zhèng)或按觀看次(cì)數進行收費的電視,人們可通過通信媒體預定此類服務。

    這一切(qiē),是通過將緊(jǐn)密耦合的、高效的n層計算技術(shù)與麵向消息的、鬆散耦(ǒu)合的Web概(gài)念相結合來實現的。我們將這種計算風格稱為Web服(fú)務,它的出現(xiàn)標誌著人類已經邁(mài)入應用程序開發技(jì)術的新紀元。Web服務(wù)是(shì)一種(zhǒng)應用程序,它可以使用標(biāo)準的互聯網協議,像超文本傳輸協議(HTTP)和XML,將功能(néng)綱領性地體現在(zài)互聯網和企業內部網上。可(kě)將Web服務視作Web上的組件編(biān)程。

    從理論上講,開發(fā)人員可通過調用Web應用編程接口(API)(就(jiù)像調用本地服務一樣),將Web服務集成到應用程序中,不同的是Web API調用可(kě)通過互聯網發送(sòng)給(gěi)位於遠程係統中的某一(yī)服務。例如,Microsoft Passport服務使得開發人員能夠(gòu)對某應用程序進行驗證。通過Passport服務編程,開發人員可以充分利用Passport的基(jī)本結構,通過運行Passport來維護(hù)用戶數據庫,以確保它的正常運行、定期(qī)備份等等。

    鬆散耦合(hé)

    在某個網絡中分發應用程序邏輯,並不是一(yī)個全新(xīn)的概念,在Web中分(fèn)發並集成應用程序邏輯才是一個嶄新的(de)概念。

    從(cóng)前,分布式的應用(yòng)程序邏輯需要使用分布式(shì)的對象模型,諸如:微軟的分布式組(zǔ)件對象模型(DCOM)、對象管理集團的公用對象請求代(dài)理(lǐ)程序體係(xì)結構(CORBA)或Sun的遠程方法調用(RMI)。通(tōng)過使用這種(zhǒng)基本(běn)結構,開發人員仍可擁有使用本地模型(xíng)所(suǒ)提供(gòng)的豐富資源(yuán)和精確性,並可將服務置於遠程係統中。

    這(zhè)些係統有一個共同的缺陷,那就是它們無法擴展(zhǎn)到互聯網上:它們要求(qiú)服務客戶端與係統提供的服務本身之(zhī)間必須進行緊密耦合,即要(yào)求一個同類基本結構。這樣的係統往往(wǎng)十分脆弱:如果一端的執行機(jī)製發生變化,那麽另一端便會崩潰。例如,如果服務器應用(yòng)程序的接(jiē)口發生更改,那麽客戶端(duān)便會崩潰。

    要求提供緊密(mì)耦合的基(jī)本結構,無可厚非,許多應用程序均是基於(yú)這種係統構建而成的。但是,當各個公司需要相互合(hé)作、或信息技術提供(gòng)商擴大業務範圍時,便(biàn)很難實現單(dān)一而統一的基(jī)本結構。您根本無(wú)法保證您希望與(yǔ)之進行遠程通信(xìn)的管(guǎn)道的另一端,具備所有您需要的基本結構:對於它使用的操作係統、對象模(mó)型或編程(chéng)語言,您可能一無所知。

    相反,Web服務彼此是鬆(sōng)散偶合的。連接中的任何(hé)一方均可更改執行機製,卻不影響應用程序的正常運行。從技術角度講,人們已轉向(xiàng)使(shǐ)用一種基於消息的異步技術來實現高可靠性的係統性(xìng)能,通過使用諸如HTTP、簡(jiǎn)單郵件傳輸協議(SMTP)以及至為重(chóng)要(yào)的XML來實現統一的連接。

    消息傳遞係統將通信的基本單元打包成自我描述型的數據包(又稱作消息),並將其(qí)放到網絡纜線中。消息傳(chuán)遞(dì)係統與分布式(shì)對(duì)象(xiàng)係統之間的本質區別在於:要求發送方(fāng)辨識接收方的(de)基本(běn)結構的(de)程度有所不同。在分布式係(xì)統中,發送方需對接收方的情況(kuàng)作出種種猜測:應用程序是如何激活或拆包的,調用的是什麽樣的界麵,等等(děng)。

    另一方(fāng)麵,消息傳遞(dì)係統會在纜線格式級上創建合同。發送方既不需考慮消息被接收後的情況,也不(bú)需考慮接發雙方之間(jiān)的(de)通信情況,唯一需要考慮的是接收方是(shì)否能辯識發送的消息內(nèi)容。

    在纜線格式級上創建合同的(de)優勢不言而喻。例如,接收方可在任何時刻進行更改(gǎi),而不(bú)會幹擾發送方的消息(xī)發送,隻要它仍可辯識原有消息的(de)內容。另外,發送方無需任何特殊的軟件即可與接收方通信:隻要它發出正確格式的消(xiāo)息,接收方就(jiù)可以響應。


纜線(xiàn)級的(de)XML:SOAP

  實現Web服務的(de)異類基本結構以及在整個Web中實現Web服務的關鍵,是實(shí)現支持簡單數據描述格式的技術。這種格式就是XML。Web服務必須使用XML來完成三件事情:基本的纜線格式、服務描(miáo)述以及“服務發現(xiàn)”。

  SOAP:在(zài)通信的(de)最低級別,係(xì)統需要使用同一語言。特別,作為通信雙方的應(yīng)用程序需要遵守同一套通信規則:如何表示(shì)不同的數據類型(例如:是(shì)整數還是數組),以及如何表示命令(即:需要對數據進行何種操作)。另外,在必要的時候應用程序還需對該語言(yán)適當的擴展。簡單(dān)對象訪問協議(SOAP)是XML的實施(shī)工具,它提供了一套公共規則集,該規則集說明了如何表示並擴展數據和(hé)命令。

  Web服務描述語言(WSDL)。雙方應用程序在(zài)得到了如何表示數據類型和命令的規(guī)則(zé)後(hòu),需要對所接收的特定數據和命令(lìng)進行有效的描述。僅僅說已(yǐ)接收到整數是不夠的;比如,在接收到兩個整數(shù)後,應用程序必須明確表述(shù)它可以對這(zhè)兩(liǎng)個整數執行乘(chéng)法運算操作。Web服務描述語言(WSDL)是一種XML語法,開發人員和開發工具可使(shǐ)用它來表述(shù)Web服務(wù)的具體(tǐ)功能。

  “SOAP發現”:在最高層,還需製定一套如何定位服務描述的規(guī)則:默認情況(kuàng)下,用(yòng)戶或工(gōng)具能在什麽(me)地方找到服務的功能描述?依據“SOAP發現(xiàn)”規格說明中提供的規則集(jí),用戶或開發工具可以自動找到服務的SCL描述。

  一旦實現了這三(sān)種功能層(céng),開發人員便可容易地找到Web服務,將它例(lì)示成一個對象後再集成進應用程序中,繼而(ér)構建出一個具有豐富功能的基本結構。這樣,得到的應用程序便(biàn)能與Web服務進行反向通信了。

  .NET框架:Web服務引擎

  很顯然,許多基本結構都需實現上述進程對開發人(rén)員和(hé)用戶的透明化。.NET框架提供此基(jī)本結構。從.NET框架角度看,所(suǒ)有組件都可以是Web服務,而Web服務也(yě)僅是一種組件。實際上,.NET框架提取出微軟組件對象模型(COM)的(de)精華,將它(tā)們與鬆散(sàn)耦合計算的精華有機地結合在一起(qǐ),生成了強(qiáng)大、高效的(de)Web組件係統:簡化程序員的“管道”操作、深入地集成了安(ān)全性,引進了基(jī)於互聯(lián)網(wǎng)的操作係統(tǒng),極大地(dì)改善應用程(chéng)序的可靠(kào)性和可(kě)擴展性。

  .NET框架(jià)包含三個主要部分:公共語(yǔ)言運行(háng)時、具有多層次結構的統一的類庫集合和高級版“活動服(fú)務器頁麵”(又名ASP+)

  公共語言運行時(shí)

  此名稱不能準確反映它的全部功能。實際上,公共語言(yán)運行時在組件的開發過程中以及軟件的運行過程(chéng)中,都扮演著非常重要的角色。在組件運行過程中,運行時負責管理內存分配、啟動或取消線(xiàn)程和進程、實施安全性策略、同時滿足當前組件對其它組(zǔ)件的需求。在開發階段,運行時的作用有些變化:與現今的COM相比,運行時的自動化(huà)程度大為提高(比如可自動執(zhí)行內存管理),因而開發人員的工作變得非常(cháng)輕鬆。尤(yóu)其(qí)是,映射功能將使代碼編(biān)寫量銳(ruì)減,這些代碼是開發人員在將業務邏輯轉化成可複用的組件進行編程時所需的。

  對編程語言而言,運行時這個概念並(bìng)不新奇:實際上每種編程語言都有(yǒu)自己的運行時。Visual Basic?開發係統具有最(zuì)為明顯的運行(háng)時(名為VBRUN),Visual C++?跟Visual FoxPro?、Jscript?、SmallTalk、Perl、Python和Java一樣,有一個運行時MSVCRT。NET框架的關鍵作(zuò)用是它提供了(le)一(yī)個跨編程語言的統一(yī)的編程環境(jìng),這也是它能獨(dú)樹一幟的(de)根本原因所在。

  統一的編程類

  .NET框(kuàng)架中的(de)類為開發人員提供了一個統一的、麵向對象的、層(céng)次化的、可擴展的類庫集(API)。現今,C++開發(fā)人員使用的是微軟基(jī)礎類(lèi)庫,Java開發人員使用的是Windows?基礎類庫,而Visual Basic用戶使用的又是Visual Basic API集。簡而言之,.NET框架(jià)統(tǒng)一了微軟當前各種不同的框架。這樣,開發人員不再需要學(xué)習多種框架就能順利編程。遠不止於此的是,通過創(chuàng)建一個公共的跨編程語言的API集(jí),.NET框架可實現跨語言繼(jì)承性、錯誤處理功能和調試功能。實際上,從Jscript到C++的所有編(biān)程語言,都是相互等同的,開發人員可以自由(yóu)選擇理想的(de)編程語言。

  高級版“活(huó)動服務器頁麵”(ASP+)

  ASP+是使用 .NET框架提供的類庫構(gòu)建而成(chéng)的,它提供了一個Web應用(yòng)程序模型,該模型(xíng)由一組(zǔ)控件和一個基本結構組成。有了它,Web應用程序的構建變得非常容(róng)易。開發人員可以直接使用ASP+控件集,該控件(jiàn)集封裝(zhuāng)了公共的、用於超文本標(biāo)識語言(yán)(HTML)用戶界(jiè)麵的各種小組(zǔ)件(諸如文本框、下拉菜單等等)。實際上,這些控件運行在Web服務器上,它們將用戶界麵轉換成HTML格式後再發送給瀏覽器。在服務(wù)器上,控件負責將麵向(xiàng)對象的編程模型呈現給Web開發人員,這種編(biān)程模型能提供麵向對象的編程技術擁有的豐富功能。ASP+還提供一些基本結構服務(諸如會話狀態管理和進程循環),這些服務進一(yī)步減少了

關鍵詞:XML,Web服務,.NET框架

閱讀本文後您有什麽感想? 已(yǐ)有 人給出評價!

  • 1 歡迎喜(xǐ)歡(huān)
  • 1 白癡(chī)
  • 1 拜(bài)托
  • 1 哇
  • 1 加油
  • 1 鄙(bǐ)視(shì)
免费人欧美成又黄又爽的视频丨一本色道久久88综合日韩精品丨国产专区日韩精品欧美色丨午夜无遮挡男女啪啪视频丨国产欧美日韩综合精品一区二区丨亚洲精品无码不卡在线播HE丨亚洲精品国产精品国自产观看丨日韩国产高清av不卡