《網(wǎng)絡(luò)編程語(yǔ)言》PPT課件.ppt_第1頁(yè)
《網(wǎng)絡(luò)編程語(yǔ)言》PPT課件.ppt_第2頁(yè)
《網(wǎng)絡(luò)編程語(yǔ)言》PPT課件.ppt_第3頁(yè)
《網(wǎng)絡(luò)編程語(yǔ)言》PPT課件.ppt_第4頁(yè)
《網(wǎng)絡(luò)編程語(yǔ)言》PPT課件.ppt_第5頁(yè)
已閱讀5頁(yè),還剩156頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、網(wǎng)絡(luò)編程語(yǔ)言,沈衛(wèi)平,2008編程語(yǔ)言走勢(shì)解盤,Java類語(yǔ)言:Java似乎會(huì)逐漸走下坡。J2ME會(huì)受到Google Android、Adobe Flash Lite、.NET Compact Framework的影響;J2SE的對(duì)手則是.NET和AIR;J2EE在中小型網(wǎng)站受到PHP、Ruby-on-Rails(RoR)很大的沖擊。幸好,目前大型企業(yè)好像還是買J2EE的帳。 在J2ME和J2SE方面,未來(lái)似乎可以用JavaFX奮力一搏;在J2EE方面,也有Groovy/Grails可以抵擋RoR。尤其目前大家懷疑PHP和RoR只適合用在中小型網(wǎng)站,大型企業(yè)網(wǎng)站似乎還是用J2EE比較安心,Gr

2、oovy/Grails可以保障大家在J2EE上既有的投資。 如果你是Java愛好者,最近有點(diǎn)想改用RoR,那么你可以去看看Grails,或許你會(huì)因此想繼續(xù)留在Java陣營(yíng)。,2008編程語(yǔ)言走勢(shì)解盤,PHP語(yǔ)言:因?yàn)镻HP對(duì)初學(xué)者相當(dāng)友善,所以過去這幾年使用者數(shù)量增加快速,但是似乎已經(jīng)到達(dá)瓶頸,這可能是RoR造成的。隨著RoR推出新版,PHP會(huì)受到更大的挑戰(zhàn)。連開發(fā)工具廠商CodeGear都在2007年推出Ruby和PHP的開發(fā)工具,顯見這兩個(gè)語(yǔ)言似乎都會(huì)逐漸走入企業(yè)市場(chǎng)。 Python語(yǔ)言:Python早就移植到.NET和Java,2008年會(huì)持續(xù)推出修訂版本,而且也會(huì)推出全新的Python

3、 3000。Python 3000不以相容于2.x版為目的,而是要運(yùn)用過去培養(yǎng)出來(lái)的經(jīng)驗(yàn),徹底翻新Python。目前Python編程員的需求也已經(jīng)超越Perl。,2008編程語(yǔ)言走勢(shì)解盤,Perl語(yǔ)言:目標(biāo)遠(yuǎn)大是一件好事,但目標(biāo)遠(yuǎn)大卻沒有足夠的資源可以完成目標(biāo),就會(huì)陷入絕境。Perl 6就是這樣的例子,它比.NET更早提出,但這幾年下來(lái),.NET已經(jīng)從1.0進(jìn)入到3.5,Perl 6卻連1.0都還沒誕生。Perl擅長(zhǎng)文字?jǐn)?shù)據(jù)處理,但是在大部分語(yǔ)言都支持Regular Expression,加上文字?jǐn)?shù)據(jù)大量XML化之后,Perl的優(yōu)勢(shì)已經(jīng)消失大半。 Ruby語(yǔ)言:Ruby可能會(huì)在2008年推出2

4、.0,加上2007年底已經(jīng)推出的RoR 2.0, Ruby整個(gè)就是一股擋不住的氣勢(shì)??赡茉?008年底之前,Ruby在TIOBE的排行榜上就會(huì)超越Perl,只剩下Python和PHP這兩個(gè)對(duì)手了。,2008編程語(yǔ)言走勢(shì)解盤,JavaScript語(yǔ)言:Web應(yīng)用蔚為主流,而JavaScript又是瀏覽器的標(biāo)準(zhǔn)語(yǔ)言,所以這幾年來(lái)相當(dāng)受到重視。 在Adobe推出AIR,Mozilla推出Prism之后,JavaScript可以開發(fā)出某些種類的桌面應(yīng)用,JavaScript的用途變得更廣。 而JavaScript的兄弟ActionScript,隨著AIR的推出又會(huì)更受歡迎一些,但是Silverligh

5、t的推出,又會(huì)抵銷ActionScript成長(zhǎng)力道。,2008編程語(yǔ)言走勢(shì)解盤,C語(yǔ)言:系統(tǒng)語(yǔ)言語(yǔ)言方面,C語(yǔ)言的地位還是一樣重要,C+則會(huì)慢慢走下坡;D語(yǔ)言崛起,將會(huì)接收相當(dāng)多原來(lái)C+的使用者,而Delphi則是一蹶不振,當(dāng)年Delphi/Kylix跨Windows/Linux的美夢(mèng)已然消失。 D語(yǔ)言:多年來(lái),D語(yǔ)言平均一個(gè)月推出兩個(gè)版本,改版速度相當(dāng)快,在2007年1月推出1.0版后,不出幾個(gè)月,又推出2.0版。1.0版持續(xù)做bug修訂,盡量不加新特色,2.0版則繼續(xù)進(jìn)行實(shí)驗(yàn)性的翻修。雖然D語(yǔ)言1.0才正式推出1年,但已經(jīng)成為相當(dāng)受歡迎的系統(tǒng)語(yǔ)言,可惜至今仍然沒有很好用的IDE。,2008

6、編程語(yǔ)言走勢(shì)解盤,Lua、PowerShell、Erlang語(yǔ)言:可說是未來(lái)幾年竄升力道最強(qiáng)的潛力之星,但都還不至于成為主流語(yǔ)言。 Lua是相當(dāng)小的語(yǔ)言,適合嵌入其他的環(huán)境中,和其他語(yǔ)言一同使用,根據(jù)TIOBE開發(fā)語(yǔ)言排行榜數(shù)據(jù)顯示,這幾年Lua越來(lái)越受到重視,尤其2007年Lua更是往上猛竄二十幾個(gè)名次,由此可見Lua的需求大增。 隨著Windows Vista系統(tǒng)的出貨,未來(lái)幾年P(guān)owerShell會(huì)成為相當(dāng)重要的系統(tǒng)管理語(yǔ)言。 目前的多核心環(huán)境、網(wǎng)絡(luò)分布式計(jì)算、容錯(cuò)的需求,則讓Erlang持續(xù)受到重視。,2008編程語(yǔ)言走勢(shì)解盤,在2007年第三季,Apple iPhone在美國(guó)的Sma

7、rtphone市場(chǎng)占有率已經(jīng)到達(dá)27%,超過Windows Mobile。 繼美洲和歐洲之后,2008年iPhone會(huì)在亞洲開始販賣,并推出第二代機(jī)種,也預(yù)計(jì)在2008年推出SDK(軟件開發(fā)工具包),讓我們可以為iPhone寫原生(Native)程序。 所以,如果你需要為Smartphone開發(fā)應(yīng)用,除了考慮Windows Mobile之外,你也必須思考是否要用Objective-C語(yǔ)言開發(fā)的MacOS應(yīng)用了(iPhone使用精簡(jiǎn)版的MacOS X)。,2008編程語(yǔ)言走勢(shì)解盤,轉(zhuǎn)換語(yǔ)言的成本通常很高,所以一年之內(nèi),各個(gè)語(yǔ)言通常不會(huì)有太大的興衰變化, 這里是描述以2008為中心,前后數(shù)年期間各

8、類編程語(yǔ)言的整體狀況;把時(shí)間拉長(zhǎng),發(fā)展態(tài)勢(shì)會(huì)比較明顯,不受到短期震蕩的影響,預(yù)測(cè)未來(lái)就不至于太過離譜,讓大家當(dāng)作未來(lái)選擇語(yǔ)言的參考。,WEB2.0,互聯(lián)網(wǎng)下一步,是要讓所有的人都忙起來(lái),全民織網(wǎng),然后用軟件,機(jī)器的力量使這些信息更容易被需要的人找到和瀏覽。如果說WEB1.0是以數(shù)據(jù)為核心的網(wǎng),那WEB2.0是以人為出發(fā)點(diǎn)的互聯(lián)網(wǎng)。我們看一看最近的一些WEB2.0產(chǎn)品,就可以理解以上觀點(diǎn)。 Blog: 用戶織網(wǎng),發(fā)表新知識(shí),和其他用戶內(nèi)容鏈接,進(jìn)而非常自然的組織這些內(nèi)容。 RSS: 用戶產(chǎn)生內(nèi)容自動(dòng)分發(fā),定閱 Podcasting: 個(gè)人視頻/聲頻的發(fā)布/定閱 SNS: blog+人和人之間的鏈

9、接 WIKI: 用戶共同建設(shè)一個(gè)大百科全書,WEB2.0,從知識(shí)生產(chǎn)的角度看,WEB1.0的任務(wù),是將以前沒有放在網(wǎng)上的人類知識(shí),通過商業(yè)的力量,放到網(wǎng)上去。WEB2.0的任務(wù)是,將這些知識(shí),通過每個(gè)用戶的瀏覽求知的力量,協(xié)作工作,把知識(shí)有機(jī)的組織起來(lái),在這個(gè)過程中繼續(xù)將知識(shí)深化,并產(chǎn)生新的思想火花; 從內(nèi)容產(chǎn)生者角度看,WEB1.0是商業(yè)公司為主體把內(nèi)容往網(wǎng)上搬,而WEB2.0則是以用戶為主,以簡(jiǎn)便隨意方式,通過blog/podcasting 方式把新內(nèi)容往網(wǎng)上搬; 從交互性看,WEB1.0是網(wǎng)站對(duì)用戶為主;WEB2.0是以P2P為主。 從技術(shù)上看,WEB客戶端化,工作效率越來(lái)越高。比如像A

10、jax技術(shù), GoogleMAP/Gmail里面用得出神入化。 我們看到,用戶在互聯(lián)網(wǎng)上的作用越來(lái)越大;他們貢獻(xiàn)內(nèi)容,傳播內(nèi)容,而且提供了這些內(nèi)容之間的鏈接關(guān)系和瀏覽路徑。在SNS里面,內(nèi)容是以用戶為核心來(lái)組織的。WEB2.0是以用戶為核心的互聯(lián)網(wǎng)。,REST(Representational State Transfer),REST軟件架構(gòu)是由Roy Thomas Fielding博士在2000年首次提出的。他為我們描繪了開發(fā)基于互聯(lián)網(wǎng)的網(wǎng)絡(luò)軟件的藍(lán)圖。REST軟件架構(gòu)是一個(gè)抽象的概念,是一種為了實(shí)現(xiàn)這一互聯(lián)網(wǎng)的超媒體分布式系統(tǒng)的行動(dòng)指南。利用任何的技術(shù)都可以實(shí)現(xiàn)這種理念。而實(shí)現(xiàn)這一軟件架構(gòu)

11、最著名的就是HTTP協(xié)議。通常我們把REST也寫作為REST/HTTP,在實(shí)際中往往把REST理解為基于HTTP的REST軟件架構(gòu),或者更進(jìn)一步把REST和HTTP看作為等同的概念。 今天,HTTP是互聯(lián)網(wǎng)上應(yīng)用最廣泛的計(jì)算機(jī)協(xié)議。HTTP不是一個(gè)簡(jiǎn)單的運(yùn)載數(shù)據(jù)的協(xié)議,而是一個(gè)具有豐富內(nèi)涵的網(wǎng)絡(luò)軟件的協(xié)議。它不僅僅能夠?qū)τ诨ヂ?lián)網(wǎng)資源進(jìn)行唯一定位,而且還能告訴我們對(duì)于該資源進(jìn)行怎樣運(yùn)作。這也是REST軟件架構(gòu)當(dāng)中最重要的兩個(gè)理念。而REST軟件架構(gòu)理念是真正理解HTTP協(xié)議而形成的。有了REST軟件架構(gòu)理念出現(xiàn),才使得軟件業(yè)避免了對(duì)HTTP協(xié)議的片面理解。只有正確的理論指導(dǎo),才能避免在軟件開發(fā)的

12、實(shí)際工作過程中少走彎路。,REST與URI(資源定位),REST軟件架構(gòu)之所以是一個(gè)超媒體系統(tǒng),是因?yàn)樗梢园丫W(wǎng)絡(luò)上所有資源進(jìn)行唯一的定位,不管你的文件是圖片、文件Word還是視頻文件,也不管你的文件是txt文件格式、xml文件格式還是其它文本文件格式。它利用支持HTTP的TCP/IP協(xié)議來(lái)確定互聯(lián)網(wǎng)上的資源。,REST與CRUD原則,REST軟件架構(gòu)遵循了CRUD原則,該原則告訴我們對(duì)于資源(包括網(wǎng)絡(luò)資源)只需要四種行為:創(chuàng)建(Create)、獲取(Read)、更新(Update)和銷毀(DELETE)就可以完成對(duì)其操作和處理了。其實(shí)世界萬(wàn)物都是遵循這一規(guī)律:生、見、變、滅。所以計(jì)算機(jī)世界也

13、不例外。這個(gè)原則是源自于我們對(duì)于數(shù)據(jù)庫(kù)表的數(shù)據(jù)操作:insert(生)、select(見)、update(變)和delete(滅),所以有時(shí)候CRUD也寫作為RUDI,其中的I就是insert。這四個(gè)操作是一種原子操作,即一種無(wú)法再分的操作,通過它們可以構(gòu)造復(fù)雜的操作過程,正如數(shù)學(xué)上四則運(yùn)算是數(shù)字的最基本的運(yùn)算一樣。,REST與網(wǎng)絡(luò)服務(wù),盡管在Java語(yǔ)言世界中網(wǎng)絡(luò)服務(wù)目前是以SOAP技術(shù)為主,但是REST將是網(wǎng)絡(luò)服務(wù)的另一選擇,并且是真正意義上的網(wǎng)絡(luò)服務(wù)。基于REST思想的網(wǎng)絡(luò)服務(wù)不久的將來(lái)也會(huì)成為是網(wǎng)絡(luò)服務(wù)的主流技術(shù)。REST不僅僅把HTTP作為自己的數(shù)據(jù)運(yùn)輸協(xié)議,而且也作為直接進(jìn)行數(shù)據(jù)處

14、理的工具。而當(dāng)前的網(wǎng)絡(luò)服務(wù)技術(shù)都需要使用其它手段來(lái)完成數(shù)據(jù)處理工作,它們完全獨(dú)立于HTTP協(xié)議來(lái)進(jìn)行的,這樣增加了大量的復(fù)雜軟件架構(gòu)設(shè)計(jì)工作。REST的思想充分利用了現(xiàn)有的HTTP技術(shù)的網(wǎng)絡(luò)能力。在德國(guó)電視臺(tái)上曾經(jīng)出現(xiàn)過一個(gè)這樣的五十萬(wàn)歐元智力題:如何實(shí)現(xiàn)網(wǎng)絡(luò)服務(wù)才能充分利用現(xiàn)有的HTTP協(xié)議?該問題給出了四個(gè)答案:去問微軟;WSDL2.0/SOAP1.2;WS-Transfer;根本沒有。這個(gè)問題告訴我們HTTP并不是一個(gè)簡(jiǎn)單的數(shù)據(jù)傳來(lái)傳去的協(xié)議,而是一個(gè)聰明的會(huì)表現(xiàn)自己的協(xié)議,這也許是REST = Representational State Transfer的真正含義。 實(shí)際上目前很多大

15、公司已經(jīng)采用了REST技術(shù)作為網(wǎng)絡(luò)服務(wù),如Google、Amazon等。在Java語(yǔ)言中重要的兩個(gè)以SOAP技術(shù)開始的網(wǎng)絡(luò)服務(wù)框架XFire和Axis也把REST作為自己的另一種選擇。它們的新的項(xiàng)目分別是Apache CXF 和Axis2 。Java語(yǔ)言也制定關(guān)于REST網(wǎng)絡(luò)服務(wù)規(guī)范:JAX-RS: Java API for RESTful Web Services (JSR 311)。相信還會(huì)出現(xiàn)更多與REST相關(guān)的激動(dòng)人心的信息。,REST與AJAX技術(shù),盡管AJAX技術(shù)的出現(xiàn)才不到兩年時(shí)間,但是AJAX技術(shù)遵循了REST的一些重要原則。AJAX技術(shù)充分利用了HTTP來(lái)獲取網(wǎng)絡(luò)資源并且實(shí)現(xiàn)

16、了HTTP沒有的對(duì)于異步數(shù)據(jù)進(jìn)行傳輸?shù)墓δ?。AJAX技術(shù)還使得軟件更好地實(shí)現(xiàn)分布性功能,在一個(gè)企業(yè)內(nèi)只要一個(gè)人下載了AJAX引擎,其它企業(yè)內(nèi)部的人員,就可以共享該資源了。AJAX技術(shù)遵守REST準(zhǔn)則的應(yīng)用程序中簡(jiǎn)單和可伸縮的架構(gòu),凡是采用AJAX技術(shù)的頁(yè)面簡(jiǎn)潔而又豐富,一個(gè)頁(yè)面表現(xiàn)了豐富多彩的形態(tài)。 AJAX技術(shù)還使用了一種不同于XML格式的JSON文件格式,這個(gè)意義在哪里呢?在REST軟件架構(gòu)下我們不能對(duì)于XML文件進(jìn)行序列化處理,這樣程序員必須要使用自己的XML綁定框架。而以序列化的JavaScript對(duì)象為基礎(chǔ)的JSON已經(jīng)獲得了廣泛認(rèn)可,它被認(rèn)為能以遠(yuǎn)比XML更好的方式來(lái)序列化和傳輸簡(jiǎn)

17、單數(shù)據(jù)結(jié)構(gòu),而且它更簡(jiǎn)潔。這對(duì)REST是一個(gè)極大貢獻(xiàn)和補(bǔ)充。 當(dāng)前的網(wǎng)絡(luò)應(yīng)用軟件還違背了REST的“無(wú)狀態(tài)服務(wù)器”約束。REST服務(wù)器只知道自己的狀態(tài)。REST不關(guān)心客戶端的狀態(tài),客戶端的狀態(tài)自己來(lái)管理,這是AJAX技術(shù)的應(yīng)用之地。通過AJAX技術(shù),可以發(fā)揮有狀態(tài)網(wǎng)絡(luò)客戶機(jī)的優(yōu)勢(shì)。而REST的服務(wù)器關(guān)心的是從所有網(wǎng)絡(luò)客戶端發(fā)送到服務(wù)器操作的順序。這樣使得互聯(lián)網(wǎng)這樣一個(gè)巨大的網(wǎng)絡(luò)得到有序的管理。,REST與Rails框架,Ruby on Rails框架(簡(jiǎn)稱Rails或者Rails框架)是一個(gè)基于Ruby語(yǔ)言的越來(lái)越流行的網(wǎng)絡(luò)應(yīng)用軟件開發(fā)框架。它提供了關(guān)于REST最好的支持,也是當(dāng)今應(yīng)用REST

18、最成功的一個(gè)軟件開發(fā)框架。Rails框架(從版本1.2.x起)成為了第一個(gè)引入REST作為核心思想的主流網(wǎng)絡(luò)軟件開發(fā)框架。在Rails框架的充分利用了REST軟件架構(gòu)之后,人們更加堅(jiān)信REST的重要性和必要性。Rails利用REST軟件架構(gòu)思想對(duì)網(wǎng)絡(luò)服務(wù)也提供了一流的支持。從最直觀的角度看待REST,它是網(wǎng)絡(luò)服務(wù)最理想的手段,但是Rails框架把REST帶到了網(wǎng)絡(luò)應(yīng)用軟件開發(fā)框架。這是一次飛躍,讓REST的思想從網(wǎng)絡(luò)服務(wù)的應(yīng)用提升到了網(wǎng)絡(luò)應(yīng)用軟件開發(fā)。利用REST思想的simply_restful插件已經(jīng)成為了Rails框架的核心內(nèi)容。,REST安全性,我們把現(xiàn)有基于SOAP的網(wǎng)絡(luò)服務(wù)和基于R

19、EST/HTTP網(wǎng)絡(luò)服務(wù)作個(gè)比喻,前者是一種傳統(tǒng)的寄信方式,而后者是現(xiàn)代網(wǎng)絡(luò)的電子郵件方式。要是是寄信和電子郵件都有病毒存在的話,傳統(tǒng)的寄信被送到對(duì)方就很危險(xiǎn),而電子郵件是開發(fā)的,電子郵件供應(yīng)商比如Google為我們檢查了電子郵件是否有病毒。這里并不是說明SOAP網(wǎng)絡(luò)服務(wù)消息包含義病毒,而是說明HTTP是無(wú)法處理SOAP信息包究竟好不好,需要額外的軟件工具解決這一問題,包括防火墻也用不上和管不了。 REST/HTTP網(wǎng)絡(luò)服務(wù)的信息包可以被防火墻理解和控制。你可以按照操作和鏈接進(jìn)行過濾信息包,如你可以規(guī)定從外部來(lái)的只能讀?。℅ET操作)自己服務(wù)器的資源。這樣對(duì)于系統(tǒng)管理員而言使得軟件管理更為簡(jiǎn)單

20、。REST的安全性還可以利用傳輸安全協(xié)議SSL/TLS、基本和摘要式認(rèn)證(Basic und Digest Authentication)。除了這些REST自身的安全性功能外,還可以利用像基于信息的Web Services Security(JSR 155)作為REST不錯(cuò)的補(bǔ)充。,參考文獻(xiàn),中文參考文獻(xiàn) Roy Thomas Fielding博士論文中文版本 Roy Thomas Fielding博士論文英文版本 /fielding/pubs/dissertation/top.htm,RSS,RSS是在線共享內(nèi)容的一種簡(jiǎn)易方式(也叫聚合內(nèi)容,Real

21、ly Simple Syndication)。通常在時(shí)效性比較強(qiáng)的內(nèi)容上使用RSS訂閱能更快速獲取信息,網(wǎng)站提供RSS輸出,有利于讓用戶獲取網(wǎng)站內(nèi)容的最新更新。網(wǎng)絡(luò)用戶可以在客戶端借助于支持RSS的聚合工具軟件(例如SharpReader,NewzCrawler、FeedDemon),在不打開網(wǎng)站內(nèi)容頁(yè)面的情況下閱讀支持RSS輸出的網(wǎng)站內(nèi)容。 說得更加簡(jiǎn)單一點(diǎn),RSS就是一種用來(lái)分發(fā)和匯集網(wǎng)頁(yè)內(nèi)容的XML格式!如果你還是不太明白,沒有關(guān)系,RSS是什么其實(shí)并不重要,重要的是RSS可以做什么,下面我們就來(lái)了解一下,RSS能給我們帶來(lái)什么?,RSS可以干什么,1.訂閱BLOG(你可以訂閱你工作中所

22、需的技術(shù)文章;也可以訂閱與你有共同愛好的作者的Blog,總之,你對(duì)什么感興趣你就可以訂什么)2.訂閱新聞(無(wú)論是奇聞怪事、明星消息、體壇風(fēng)云,只要你想知道的,都可以訂閱)你再也不用一個(gè)網(wǎng)站一個(gè)網(wǎng)站,一個(gè)網(wǎng)頁(yè)一個(gè)網(wǎng)頁(yè)去逛了。只要這將你需要的內(nèi)容訂閱在一個(gè)RSS閱讀器中,這些內(nèi)容就會(huì)自動(dòng)出現(xiàn)你的閱讀器里,你也不必為了一個(gè)急切想知道的消息而不斷的刷新網(wǎng)頁(yè),因?yàn)橐坏┯辛烁?,RSS閱讀器就會(huì)自己通知你!,RSS閱讀器,目前,RSS閱讀器基本可以分為兩類。第一類大多數(shù)閱讀器是運(yùn)行在計(jì)算機(jī)桌面上的應(yīng)用程序,通過所訂閱網(wǎng)站的新聞供應(yīng),可自動(dòng)、定時(shí)地更新新聞標(biāo)題。在該類閱讀器中,有Awasu、FeedDemo

23、n和RSSReader這三款流行的閱讀器,都提供免費(fèi)試用版和付費(fèi)高級(jí)版。國(guó)內(nèi)最近也推出了幾款RSS閱讀器:周博通,看天下,博閱。另外,開源社區(qū)也推出了很多優(yōu)秀的閱讀器,RSSOWl(完全java開發(fā),點(diǎn)擊下載)它不僅是完全支持中文界面,而且還是完全的免費(fèi)軟件!(后面我們就將以開源軟件周博通和rssowl為例,為大家介紹怎樣來(lái)使用RSS閱讀器-周伯通,怎樣使用RSS閱讀器-rssowl))第二類新聞閱讀器通常是內(nèi)嵌于已在計(jì)算機(jī)中運(yùn)行的應(yīng)用程序中。例如,NewsGator內(nèi)嵌在微軟的Outlook中,所訂閱的新聞標(biāo)題位于Outlook的收件箱文件夾中。另外,Pluck內(nèi)嵌在Internet Exp

24、lorer瀏覽器中!另外,F(xiàn)ireFox瀏覽器內(nèi)置對(duì)RSS支持,可以使用Firefox訂閱RSS哦。,RSS的聯(lián)合(Syndication)和聚合(Aggregation),發(fā)布一個(gè)RSS文件(RSS Feed)后,這個(gè)RSS Feed中包含的信息就能直接被其他站點(diǎn)調(diào)用,而且由于這些數(shù)據(jù)都是標(biāo)準(zhǔn)的XML格式,所以也能在其他的終端和服務(wù)中使用,如PDA、手機(jī)、郵件列表等。而且一個(gè)網(wǎng)站聯(lián)盟(比如專門討論旅游的網(wǎng)站系列)也能通過互相調(diào)用彼此的RSS Feed,自動(dòng)的顯示網(wǎng)站聯(lián)盟中其他站點(diǎn)上的最新信息,這就叫著RSS的聯(lián)合。這種聯(lián)合就導(dǎo)致一個(gè)站點(diǎn)的內(nèi)容更新越及時(shí)、RSS Feed被調(diào)用的越多,該站點(diǎn)的

25、知名度就會(huì)越高,從而形成一種良性循環(huán)。而所謂RSS聚合,就是通過軟件工具的方法從網(wǎng)絡(luò)上搜集各種RSS Feed并在一個(gè)界面中提供給讀者進(jìn)行閱讀。這些軟件可以是在線的WEB工具,如, , 等,當(dāng)然,可以使用我們以上提到的客戶端工具。,RSS的未來(lái)發(fā)展,隨著越來(lái)越多的站點(diǎn)對(duì)RSS的支持,RSS已經(jīng)成為目前最成功的XML應(yīng)用。RSS搭建了信息迅速傳播的一個(gè)技術(shù)平臺(tái),使得每個(gè)人都成為潛在的信息提供者。相信很快我們就會(huì)看到大量基于RSS的專業(yè)門戶、聚合站點(diǎn)和更精確的搜索引擎。,常見RSS訂閱工具,BitsCast RSS News Reader/Podcaster GreatNews RSS READE

26、R 和訊博攬 iSpace Desktop LifereaNewsFireNetNewsWirePlazoo RSS Bandit RSSOwl /RSS Reader SharpReader Straw Vienna http:/vienna- 新浪點(diǎn)點(diǎn)通閱讀器,參考文獻(xiàn),1、 RSS 0.9 Specification http:/www.purplepages.ie/RSS/netscape/rss0.90.html 2、 RSS 1.0 Specification /rss/1.0/spec 3、 RS

27、S 2.0 Specification http:/00:6666/view/list.exl,ATOM,ATOM是一種訂閱網(wǎng)志的格式。它與RSS相比來(lái)講,有更大的彈性。 atom 是一種基于XML的文檔格式以及基于HTTP的協(xié)議,它被站點(diǎn)和客戶工具等用來(lái)聚合網(wǎng)絡(luò)內(nèi)容,包括weblog和新聞標(biāo)題等,它借鑒了各種版本RSS的使用經(jīng)驗(yàn) Atom正走在通往IETF標(biāo)準(zhǔn)的路上,在這之前,Atom的最后一個(gè)版本是Atom 0.3,并且已經(jīng)被相當(dāng)廣泛的聚合工具使用在發(fā)布和使用(consuming)上。值得一提的是, Blogger和Gmail這兩個(gè)由Google提供的服

28、務(wù)正在使用Atom.,開放API,以前的開放API(應(yīng)用程序接口)主要指桌面應(yīng)用軟件,希望通過開放API融合更多的應(yīng)用。在WEB1.0時(shí)代只有少數(shù)網(wǎng)站,比如EBAY, 亞馬遜公司(Amazon)、雅虎公司、Google公司等,在設(shè)計(jì)之初就遵循各種工業(yè)化標(biāo)準(zhǔn),進(jìn)而開放API接口,正是由于這些開放的API,他們獲得 了不少有趣、有意思的應(yīng)用。但大多數(shù)公司當(dāng)時(shí)還沒有這種意識(shí),不過在Web 2.0時(shí)代,開放API已經(jīng)成為不可忽視的趨勢(shì)。 對(duì)于公司來(lái)說,技術(shù)領(lǐng)域的競(jìng)爭(zhēng)已經(jīng)演化為標(biāo)準(zhǔn)之爭(zhēng),標(biāo)準(zhǔn)的形成在于有多少人在使用,因此開放API就意味更多的人采用,也就意味著標(biāo)準(zhǔn)。Google公司 顯然深諳此道。它所推

29、出的諸多產(chǎn)品都是基于開放的API標(biāo)準(zhǔn)。最典型的例子就是Google map,開放Google Map的API后,Google公司無(wú)需花費(fèi)力氣做更多的市場(chǎng)推廣,其他公司就會(huì)主動(dòng)地整合它的應(yīng)用。如前文我們提到的美國(guó)房地產(chǎn)交易地圖網(wǎng)就是在其網(wǎng)站 中主動(dòng)整合Google Map。正是看到開放后的巨大前景,微軟、雅虎、Skype也紛紛加入其中。,AJAX,AJAX的全稱是Asynchronous JavaScript and XML,它不是一種技術(shù)而是數(shù)種技術(shù)的組合。AJAX采用遠(yuǎn)程腳本調(diào)用技術(shù),通過JavaScript語(yǔ)言與XML Http Request對(duì)象來(lái)實(shí)現(xiàn)數(shù)據(jù)請(qǐng)求,將處理由服務(wù)器轉(zhuǎn)移到客戶端

30、,減少了服務(wù)器的資源占用,加快了數(shù)據(jù)處理的速度。采用AJAX開發(fā)的軟件能讓你在使用網(wǎng)絡(luò)應(yīng)用軟件時(shí)感覺就象在本機(jī)上一樣。 目前AJAX技術(shù)已經(jīng)廣泛應(yīng)用于網(wǎng)絡(luò)應(yīng)用軟件開發(fā)中,Google也許是AJAX技術(shù)開發(fā)投入最大收獲最多的公司,AJAX已經(jīng)成功應(yīng)用于GMail、Google Suggest和Google Maps等網(wǎng)絡(luò)應(yīng)用軟件中。 除了Google以外還有更多的公司在采用AJAX。在AJAX的幫助下Zimbra公司開發(fā)的電子郵件中,比GMail和HotMail更加互動(dòng)。 M公司也在即時(shí)通訊軟件中采用AJAX技術(shù),以創(chuàng)造更好的用戶體驗(yàn)。即使微軟也不能阻擋AJAX的魅力,微軟聲稱將在下一代 Hot

31、Mail中加入AJAX工具條。,Ajax 工具和技術(shù)綜述,Ajax (Asynchronous JavaScript + XML) 編程技術(shù)正逐漸主導(dǎo) Web 應(yīng)用程序開發(fā)領(lǐng)域。每天都有新的開發(fā)人員步入 Ajax 開發(fā)的殿堂,他們擁有不同的開發(fā)背景。本系列的第 1 部分將提供來(lái)自 IBM Ajax 開發(fā)人員專家組的 Ajax 開發(fā)資源備忘單。作者根據(jù)他們自己的 ramp-up 經(jīng)驗(yàn)為您提供了一些實(shí)用的信息,這些信息可以幫助您快速進(jìn)入高效 Ajax 開發(fā)的軌道。 Ajax 是一種 Web 應(yīng)用程序客戶機(jī)技術(shù),它結(jié)合了 JavaScript、層疊樣式表(Cascading Style Sheets

32、,CSS)、HTML、XMLHttpRequest 對(duì)象和文檔對(duì)象模型(Document Object Model,DOM),關(guān)于各種標(biāo)準(zhǔn)的更多信息,請(qǐng)參閱 參考資料。運(yùn)行在瀏覽器上的 Ajax 應(yīng)用程序以一種異步的方式與 Web 服務(wù)器通信,并且只更新頁(yè)面的一部分。通過利用 Ajax 技術(shù),可以提供豐富的、基于瀏覽器的用戶體驗(yàn)。 在開始 Ajax 之旅以前,需要熟悉很多不同的語(yǔ)言、標(biāo)準(zhǔn)、工具和庫(kù)。一開始就要在不同選項(xiàng)之間做出選擇并組合出一個(gè)開發(fā)環(huán)境來(lái)可能有些勉為其難。作者將根據(jù)他們自己的 ramp-up(項(xiàng)目初始階段的準(zhǔn)備工作)經(jīng)驗(yàn)幫助您在旅途中避免可能遇到的一些比較常見的、令人厭煩的問題。

33、,Ajax 工具和技術(shù)綜述,Ajax 將改變用戶在網(wǎng)站上的體驗(yàn),之前的單擊-顯示頁(yè)面式的體驗(yàn)將變成具有交互性、靈活性的桌面應(yīng)用程序體驗(yàn)。用戶可以避免頁(yè)面重新加載,避免等待下一部分內(nèi)容的呈現(xiàn)。您可能在想,這一切聽起來(lái)是不錯(cuò),但是如何才能做得到呢?為了回答這個(gè)問題,先來(lái)看看 Ajax 技術(shù)背后的一些幕后故事。 Ajax 是以下 Web 技術(shù)和標(biāo)準(zhǔn)的集合,它允許使用客戶端的機(jī)器在背后運(yùn)行應(yīng)用程序邏輯的重要部分,而不僅僅是呈現(xiàn)應(yīng)用程序的輸出: 超文本標(biāo)記語(yǔ)言(Hypertext Markup Language,HTML):定義最終呈現(xiàn)給用戶的內(nèi)容。 層疊樣式表(Cascading Style Shee

34、ts,CSS):定義所呈現(xiàn)內(nèi)容的樣式(或裝飾)。 文檔對(duì)象模型(Document Object Model,DOM):一種 API,瀏覽器使用它將被呈現(xiàn)內(nèi)容公開給 JavaScript 腳本。然后,腳本可以使用 DOM 在用戶看到內(nèi)容之前動(dòng)態(tài)地修改內(nèi)容。 XmlHttpRequest 對(duì)象:為瀏覽器與服務(wù)器之間的交互提供便利,通過 JavaScript 腳本調(diào)用。 JavaScript:在瀏覽器中執(zhí)行的一種編程語(yǔ)言,將所有其他的 Ajax 組成部分黏合在一起。腳本可以偵聽瀏覽器中發(fā)生的事件(例如單擊一個(gè)按鈕),并使用 XmlHttpRequests 回調(diào)服務(wù)器以對(duì)事件作出反應(yīng),然后根據(jù)返回的結(jié)

35、果修改 DOM 樹。 所有這些技術(shù)都在用戶的 Web 瀏覽器中執(zhí)行,用戶的 Web 瀏覽器充當(dāng)執(zhí)行 Ajax 程序的平臺(tái)。,Ajax 工具和技術(shù)綜述,如果要使用 Ajax,那么有一點(diǎn)值得格外注意:組成它的技術(shù)雖然是基于標(biāo)準(zhǔn)的,但又是特定于瀏覽器的。換句話說,同一個(gè)應(yīng)用程序在不同的瀏覽器上可能表現(xiàn)出不同的行為。然而,由于既不可能限制用戶使用特定的瀏覽器,又不可能忽略客戶機(jī)的瀏覽器可能不支持 CSS 或 DOM 這一事實(shí),因此,作為應(yīng)用程序的創(chuàng)建者,您需要理解各種不同瀏覽器之間的差異。 要成為一名高效的 Ajax 開發(fā)人員,需要: 了解形成 Ajax 開發(fā)基礎(chǔ)的技術(shù)。 理解可用的運(yùn)行時(shí)平臺(tái)和 We

36、b 瀏覽器。 開發(fā) Ajax 應(yīng)用程序時(shí)使用支持各種語(yǔ)言的 IDE。 擁有用于各種環(huán)境和語(yǔ)言的調(diào)試器和應(yīng)用程序測(cè)試工具。,信息源,developerWorks 上由 Brett McLaughlin 撰寫的 掌握 Ajax 系列是最好的 Ajax 教程之一。該系列不要求預(yù)先知道多少 Ajax 編程知識(shí),并且描述了各種與 Ajax 相關(guān)的技術(shù)。如果您想更好地理解 Web 架構(gòu),那么可能需要對(duì) Representational State Transfer (REST) 有所熟悉。“How to Create a REST Protocol”(請(qǐng)參閱 參考資料)這篇文章可以作為這一方面很好的入門資

37、料。 閱讀完 掌握 Ajax 系列,并且親自開始一些開發(fā)之后,您還將需要一些其他的參考信息。W3Schools(請(qǐng)參閱 參考資料)提供了核心 Ajax 技術(shù)(JavaScript、CSS、HTML、DOM、XML 等)的在線參考信息。 如果您使用的是 Mozilla Firefox 瀏覽器,那么應(yīng)該使用 DevEdge 側(cè)欄(請(qǐng)參閱 參考資料)。這些側(cè)欄包含各種 Ajax 技術(shù)標(biāo)準(zhǔn)的索引,您可以使用它們作為參考指南。 最后,如果您想到 Ajax 社區(qū)去感受一下,那么應(yīng)該訂閱 Ajaxian 博客(請(qǐng)參閱 參考資料)。,瀏覽器作為運(yùn)行時(shí)環(huán)境,Web 瀏覽器不僅是 Ajax 部署環(huán)境,同時(shí)還是調(diào)試

38、環(huán)境。大多數(shù)瀏覽器都可以添加調(diào)試輔助工具,例如 DOM 樹查看器或調(diào)試器。文章下節(jié)將對(duì)以下各種流行的瀏覽器作一個(gè)概述: Microsoft Internet Explorer (IE) Firefox Safari,Internet Explorer,IE 一直是大多數(shù)用戶的選擇。IE6 是一款成熟的瀏覽器,具有非常深的市場(chǎng)底蘊(yùn)。很多 CSS 和 DOM 特性在 IE6 中不受支持,或者以一種專用的形式提供。使用 IE6 的開發(fā)人員可能會(huì)遇到以下一些問題: 緩慢的 JavaScript 解釋器和不一致的標(biāo)準(zhǔn)實(shí)現(xiàn)。 缺少透明的 PNG 支持。 DOM 事件:一個(gè)事件可能在 Firefox 中使用

39、一個(gè)名稱,而在 IE 中又使用另一個(gè)名稱。有些事件的調(diào)用順序不一樣,在 IE 中和在 Firefox 中相同的事件對(duì)象可能具有不同的屬性。有關(guān)這一問題的更多信息,請(qǐng)閱讀 “把應(yīng)用程序從 Internet Explorer 遷移到 Mozilla”(請(qǐng)參閱 參考資料)。 未實(shí)現(xiàn)的 CSS 屬性,例如 minimum/maximum height、selectors 等等。 盡管存在這些問題,您還是應(yīng)該相信大多數(shù)用戶都是使用這個(gè)瀏覽器。也可以試著使用各種不同的庫(kù)從而在一定程度上填補(bǔ) IE6 的不足,例如 /IE7/(請(qǐng)參閱 參考資料)。 IE7 在 IE6 的基礎(chǔ)上有了很多明顯的改進(jìn),例如對(duì)標(biāo)簽的

40、支持。對(duì)于開發(fā)人員而言,隱藏的改進(jìn)更為重要。IE7 提供了一個(gè)性能更佳的 JavaScript 解釋器,并修復(fù)了 IE6 中的很多缺陷(例如 CSS),使得最遵從標(biāo)準(zhǔn)的 Ajax 應(yīng)用程序只需要少量的修改便可以在該瀏覽器上運(yùn)行。,IE 調(diào)試輔助工具,可以使用以下工具在 IE 中調(diào)試應(yīng)用程序: IE Developer Toolbar:允許更好地控制 IE 環(huán)境(緩存,cookie),瀏覽 DOM 樹,以及瀏覽和操縱元素的樣式。在分析由應(yīng)用程序生成的頁(yè)面時(shí),這是非常有用的工具。(IE Developer Toolbar 可以從 Microsoft 下載。參考資料 中提供了下載鏈接。) Micro

41、soft Script Debugger: 隨 Microsoft Office(可以從 Microsoft 下載,請(qǐng)參閱 參考資料)一起發(fā)布,通過它可以在 JavaScript 代碼中設(shè)置斷點(diǎn),觀察變量,還可以執(zhí)行常規(guī)的調(diào)試?yán)?。注意,在調(diào)試時(shí),建議在每個(gè)調(diào)試會(huì)話之前通過 IE Developer Toolbar 禁用緩存,否則后面會(huì)調(diào)試緩存版本的代碼。,IE 調(diào)試輔助工具,IE 相關(guān)瀏覽器 可以使用 Trident(IE 瀏覽器引擎)創(chuàng)建 “新” 的瀏覽器,例如 Maxthon。這里新字打上了引號(hào),因?yàn)閺拈_發(fā)人員的角度來(lái)看,瀏覽器的關(guān)鍵特(例如對(duì) Ajax 的支持)仍然相同。(請(qǐng)參閱 參考

42、資料 了解更多關(guān)于 Trident 的知識(shí)。),Mozilla Firefox,雖然 Firefox 已經(jīng)出來(lái)好幾個(gè)版本,但是這里只討論 Firefox 2.0。開發(fā)人員和超級(jí)用戶常常使用 Firefox,它是 UNIX-類操作系統(tǒng)的首選,而且是開放源碼的,除了 IE 之外,它是最流行的瀏覽器。 Firefox 有一個(gè)速度很快的 JavaScript 解釋器,并且具有各種 Web 標(biāo)準(zhǔn)的優(yōu)異的實(shí)現(xiàn)。由于它的 Ajax 友好性,我們強(qiáng)烈建議將 Firefox 用于大多數(shù) Ajax 開發(fā)。通常,很多 Ajax 開發(fā)人員都是在 Firefox 上開始應(yīng)用程序開發(fā)的,然后才轉(zhuǎn)而使用其它瀏覽器。,Fir

43、efox 調(diào)試輔助工具,Firefox 具有一個(gè)強(qiáng)大的、開放的擴(kuò)展機(jī)制,它的社區(qū)借助這種機(jī)制創(chuàng)建了大量的 Web 開發(fā)輔助工具。然而,到目前為止,F(xiàn)irebug(請(qǐng)參閱 參考資料)是其中最為流行的。(要了解關(guān)于 Firebug 功能的更多細(xì)節(jié),請(qǐng)參閱 “Ajax Debugging with Firebug”)。Firebug 是一個(gè)集成的擴(kuò)展,通過它可以: 使用斷點(diǎn)、變量查看和逐步方式來(lái)調(diào)試 JavaScript 代碼。 查看網(wǎng)絡(luò)狀況。 查看和優(yōu)化各種不同元素的 DOM 樹和 CSS。 Firebug 1.0 的強(qiáng)大性和靈活性為 Ajax 開發(fā)樹立了里程碑,也是使用 Firefox 作為首選

44、開發(fā)瀏覽器的有力的理由。 Firefox 相關(guān)的瀏覽器 一些瀏覽器,例如 Camino,使用了 Firefox 的布局引擎 Mozilla Gecko(請(qǐng)參閱 參考資料)。這些瀏覽器通過一個(gè)匹配的 Gecko 版本能夠提供與 Firefox 相同的功能。,Safari,Safari 是隨 MacOSX 一起發(fā)布的瀏覽器(從第 3 版開始,也在 Windows 上運(yùn)行。)Safari 雖然比 Firefox 和 IE7 快很多,但是缺少對(duì)標(biāo)準(zhǔn)的支持(不過最新的 WebKit 構(gòu)建有了一些改進(jìn);文章下節(jié)將會(huì)更詳細(xì)地介紹 WebKit)。還應(yīng)注意,Safari 開發(fā)人員社區(qū)規(guī)模遠(yuǎn)遠(yuǎn)小于 Firefo

45、x 和 IE 的開發(fā)人員社區(qū)。因此,網(wǎng)上關(guān)于 Safari 的信息較少,而且很多庫(kù)都沒有在 Safari 上經(jīng)過良好的測(cè)試。,Safari 調(diào)試輔助工具,Safari 瀏覽器引擎是在一個(gè)名為 WebKit 的開放源碼項(xiàng)目(請(qǐng)參閱 參考資料)中開發(fā)的。為了在 Safari 中調(diào)試應(yīng)用程序,建議使用一個(gè) WebKit 構(gòu)建。該構(gòu)建包括: 經(jīng)過定制的帶有 CSS 和 DOM 查看器的瀏覽器。 Drosera: 一個(gè) JavaScript 調(diào)試器。Drosera 可用于調(diào)試應(yīng)用程序,但是與 Firebug 相比其特性比較有限。 如果您堅(jiān)持在 Safari 中測(cè)試應(yīng)用程序,那么可以打開 Safari D

46、ebug 菜單,通過該菜單可以查看 DOM 樹、CSS 和緩存等。,Safari 相關(guān)的瀏覽器,WebKit 應(yīng)用于很多瀏覽器,其中最引入注目的是 OmniWeb。 Ajax IDE 和工具 在開發(fā)新的 Ajax 應(yīng)用程序時(shí),如果所使用的 IDE 支持所有 Ajax 相關(guān)技術(shù)并且提供快捷、友好的開發(fā)環(huán)境和 UI 將會(huì)使您如虎添翼。在選擇一款 Ajax IDE 時(shí),需要考慮以下一些特性: 具有自動(dòng)完成、顏色突出顯示、錯(cuò)誤提示等功能的語(yǔ)法制導(dǎo)編輯功能(用于 HTML、CSS、JavaScript 和 DOM) 各種技術(shù)的相關(guān)文檔 集成的 JavaScript 調(diào)試器 網(wǎng)絡(luò)監(jiān)控功能 DOM 內(nèi)省 框

47、架集成 雖然您可能會(huì)考慮購(gòu)買一個(gè) IDE,但其實(shí) Eclipse 和它的相關(guān)插件就提供了一個(gè)功能完善的、基于開放源碼的 Ajax IDE,這個(gè) IDE 可以免費(fèi)下載。本節(jié)將討論以下這些基于 Eclipse 的、包括插件的 Ajax IDE: 含 Web 工具箱(toolkit)的 Eclipse Eclipse ATF Aptana,含有 Web 工具箱的 Eclipse,如果您是一名 Java 開發(fā)人員,負(fù)責(zé)服務(wù)器端的 Java 開發(fā),那么使用 Eclipse Web 工具箱也是開始基本 Ajax 開發(fā)的簡(jiǎn)單易行的方法。通過添加 Eclipse 的 Web 工具(請(qǐng)參閱 參考資料),可以獲得

48、一個(gè)可用于開發(fā) Web 工件的基本環(huán)境,還可以獲得可編輯 HTML、CSS 和 JavaScript 文件的編輯器和編輯工具。 注意,Eclipse Web 工具環(huán)境不限于 Ajax 開發(fā),它還支持側(cè)重于服務(wù)器端的 Web 應(yīng)用程序開發(fā)。因此,它提供了諸如語(yǔ)法突出顯示和基本代碼完成之類的核心功能。它并未提供特定于 Ajax 開發(fā)任務(wù)的調(diào)試功能或 DOM 操縱功能。,Eclipse ATF,您可以安裝 Eclipse Ajax Toolkit Framework (ATF) 環(huán)境(請(qǐng)參閱 參考資料),并將其與 Eclipse Web 工具箱相結(jié)合,從而產(chǎn)生一個(gè)強(qiáng)大的、支持 Ajax 開發(fā)需求所有

49、方面的環(huán)境。ATF 提供了以下特性: 一個(gè) DOM 瀏覽器和 CSS 運(yùn)行時(shí)編輯器 一個(gè) JavaScript 調(diào)試器(通過利用 Mozilla XUL 運(yùn)行程序) 網(wǎng)絡(luò)流量監(jiān)控 通過庫(kù)配置文件實(shí)現(xiàn)常用庫(kù)的簡(jiǎn)單庫(kù)集成 與 JSLint(請(qǐng)參閱 參考資料)的集成,以執(zhí)行 JavaScript 驗(yàn)證 該工具箱中一個(gè)非常有價(jià)值的特性是在集成的 XUL 運(yùn)行程序中運(yùn)行、測(cè)試和檢查應(yīng)用程序。,SOA and Web services,面向服務(wù)的體系結(jié)構(gòu)(Service-Oriented Architecture,SOA)是一種 IT 體系結(jié)構(gòu)風(fēng)格,支持將您的業(yè)務(wù)轉(zhuǎn)換為一組相互鏈接的服務(wù)或可重復(fù)業(yè)務(wù)任務(wù),

50、可在需要時(shí)通過網(wǎng)絡(luò)訪問這些服務(wù)和任務(wù)。這個(gè)網(wǎng)絡(luò)可以是本地網(wǎng)絡(luò)、Internet,也可以分散于各地且采用不同的技術(shù),通過對(duì)來(lái)自紐約、倫敦和中國(guó)香港的服務(wù)進(jìn)行組合,可讓最終用戶感覺似乎這些服務(wù)就安裝在本地桌面上一樣??梢詫?duì)這些服務(wù)進(jìn)行結(jié)合,以完成特定的業(yè)務(wù)任務(wù),從而讓您的業(yè)務(wù)快速適應(yīng)不斷變化的客觀條件和需求。 當(dāng)在戰(zhàn)略業(yè)務(wù)目標(biāo)的引導(dǎo)下進(jìn)行 SOA 實(shí)現(xiàn)工作時(shí),可確保對(duì)業(yè)務(wù)進(jìn)行積極轉(zhuǎn)換,并能夠?qū)崿F(xiàn) SOA 的好處,具體如下: IT 與業(yè)務(wù)的一致性 IT 資產(chǎn)的最大化重用 這些有助于確保在耗資巨大的 IT 項(xiàng)目中的投資能夠給業(yè)務(wù)帶來(lái)長(zhǎng)遠(yuǎn)的價(jià)值。 那么,該如何步入 SOA 的領(lǐng)地,它又會(huì)如何影響您的業(yè)務(wù)

51、呢?IBM 確定了五個(gè)切入點(diǎn),可確保所進(jìn)行的每個(gè)基于 SOA 的解決方案都能提供真正的業(yè)務(wù)價(jià)值。每個(gè)切入點(diǎn)都提供了相應(yīng)的場(chǎng)景或已定義的方法,以幫助實(shí)現(xiàn)相應(yīng)的技術(shù),從而實(shí)現(xiàn)每個(gè)切入點(diǎn)所定義的業(yè)務(wù)價(jià)值。,SOA 切入點(diǎn),IBM 定義的五個(gè)切入點(diǎn)(均基于實(shí)際的客戶經(jīng)驗(yàn)確定)能幫助您和您的業(yè)務(wù)實(shí)現(xiàn)預(yù)定義的 SOA 解決方案,從而從中獲益。這些切入點(diǎn)同時(shí)受到業(yè)務(wù)需求(人員、流程和信息切入點(diǎn))和 IT 需求(連接性和重用切入點(diǎn))的驅(qū)動(dòng)。以下是五個(gè)切入點(diǎn)的一般描述信息: 人員:SOA 的這個(gè)切入點(diǎn)關(guān)注用戶體驗(yàn),以幫助生成調(diào)用和實(shí)現(xiàn)更好的協(xié)作,從而獲得一致的人員與流程交互,提高業(yè)務(wù)效率。例如,通過使用 SOA

52、,可以創(chuàng)建基于服務(wù)的 Portlet 來(lái)提高此協(xié)作。 流程:流程切入點(diǎn)可幫助企業(yè)了解其業(yè)務(wù)中發(fā)生的情況,從而支持其對(duì)現(xiàn)有業(yè)務(wù)模型進(jìn)行改進(jìn)。通過使用 SOA,可以將業(yè)務(wù)流程轉(zhuǎn)換為可重用且具有靈活性的服務(wù),從而改進(jìn)和優(yōu)化這些新流程。 信息:通過使用 SOA 的這個(gè)切入點(diǎn),能以一致而可見的方式利用公司中的信息。通過在所有業(yè)務(wù)領(lǐng)域提供這個(gè)一致而受信任的信息,可促進(jìn)企業(yè)各個(gè)領(lǐng)域的創(chuàng)新工作,從而更為有效地進(jìn)行競(jìng)爭(zhēng)。通過使用 SOA,可以更好地控制信息,而且通過信息與業(yè)務(wù)流程的結(jié)合,可以發(fā)現(xiàn)很多有意義的新關(guān)系。 連接性:利用連接性切入點(diǎn),可以有效地連接基礎(chǔ)設(shè)施,從而將企業(yè)中的所有人員、流程和信息整合到一起。

53、通過在服務(wù)間和整個(gè)環(huán)境中實(shí)現(xiàn)靈活的 SOA 連接,可以獲取現(xiàn)有業(yè)務(wù)流程并在不需要太多工作的情況下通過其他業(yè)務(wù)通道提供此流程。甚至還能以安全的方式連接防火墻外的外部合作伙伴。 重用:通過 SOA 重用服務(wù),可以充分利用企業(yè)中已經(jīng)存在的服務(wù)。通過對(duì)現(xiàn)有資源進(jìn)行構(gòu)建,可以簡(jiǎn)化業(yè)務(wù)流程,在整個(gè)企業(yè)內(nèi)確保一致性并縮短開發(fā)時(shí)間。所有這些將能幫助您節(jié)約大量的時(shí)間和資金。另外,還能減少服務(wù)中的功能重復(fù),并能獲得使用企業(yè)中為大家所熟悉的經(jīng)過驗(yàn)證的核心應(yīng)用程序的好處。,SOA 場(chǎng)景,之所以定義切入點(diǎn),是為了幫助客戶了解如何認(rèn)識(shí) SOA。不過,還需要進(jìn)一步的實(shí)現(xiàn)細(xì)節(jié)來(lái)幫助客戶的業(yè)務(wù)和 IT 團(tuán)隊(duì)開始 SOA 之旅。

54、而這正是需要更為具體的場(chǎng)景的原因。 同樣,IBM 技術(shù)專家在參考實(shí)際的客戶經(jīng)驗(yàn)和多年的積累的情況下,認(rèn)識(shí)到業(yè)務(wù)部門在設(shè)計(jì)和實(shí)現(xiàn) SOA 解決方案的過程中經(jīng)常會(huì)遵循多個(gè)常見的場(chǎng)景。通過定義這些場(chǎng)景,IBM 為您提供了預(yù)定義的真實(shí)方法,幫助實(shí)現(xiàn) SOA 解決方案。每個(gè)場(chǎng)景都提供了經(jīng)過測(cè)試和集成的產(chǎn)品或?qū)崿F(xiàn),用于實(shí)現(xiàn)此場(chǎng)景。因此,可以將這些場(chǎng)景映射到您公司具體的目標(biāo)和需求,從而很好地確定自己如何實(shí)現(xiàn)這些好處。,SOA 場(chǎng)景,服務(wù)創(chuàng)建:創(chuàng)建靈活的基于服務(wù)的業(yè)務(wù)應(yīng)用程序。新的面向服務(wù)的應(yīng)用程序?qū)I(yè)務(wù)行為作為服務(wù)公開,同時(shí)還能重用作為服務(wù)公開的業(yè)務(wù)邏輯。 服務(wù)連接性:無(wú)論何時(shí)何地使用何種工具,都能使用中間

55、層服務(wù)網(wǎng)關(guān)或總線讓各種應(yīng)用程序訪問核心服務(wù)集,從而通過無(wú)縫的消息和信息流將企業(yè)中的人員、流程和信息連接起來(lái)。 交互與協(xié)作服務(wù):必須通過多種設(shè)備(如瀏覽器、PC 和移動(dòng)設(shè)備)向人類用戶提供一個(gè)或一組服務(wù)。交互與協(xié)作服務(wù)還可通過將這些服務(wù)聚合為視圖,以交付信息并在業(yè)務(wù)流程的上下文進(jìn)行交互,從而提高人員工作效率。 SOA 所支持的業(yè)務(wù)流程管理:業(yè)務(wù)流程管理是將軟件功能和業(yè)務(wù)專業(yè)知識(shí)相結(jié)合來(lái)加速流程改進(jìn)和促進(jìn)業(yè)務(wù)創(chuàng)新的學(xué)科。 作為服務(wù)的信息:“作為服務(wù)的信息”可在企業(yè)內(nèi)作為可重用服務(wù)訪問復(fù)雜的異類數(shù)據(jù)源。 SOA 設(shè)計(jì):通過一組角色、方法和構(gòu)件保持業(yè)務(wù)設(shè)計(jì)建模和 IT 解決方案設(shè)計(jì)的一致,以提供一組供

56、優(yōu)化的顯式業(yè)務(wù)流程和用于組合及集成的服務(wù)。 SOA 治理:建立并執(zhí)行 SOA 開發(fā)與運(yùn)行時(shí)流程。定義策略、流程和工具來(lái)監(jiān)視服務(wù)的歸屬、使用人、使用方式及提供時(shí)間。 SOA 安全性和管理:作為 IT 服務(wù)管理(IT Service Management,ITSM)服務(wù)一部分的發(fā)現(xiàn)、監(jiān)視、保護(hù)、供應(yīng)、更改和生命周期管理工作。,SOA 場(chǎng)景,之前討論的五個(gè) SOA 切入點(diǎn)直接映射到(即具有一對(duì)一關(guān)系)本列表中的前五個(gè)場(chǎng)景。(例如,重用直接映射到服務(wù)創(chuàng)建,而連接性直接映射到服務(wù)連接性。)我們還將討論其他 SOA 場(chǎng)景,這些場(chǎng)景均以上面的五個(gè)切入點(diǎn)為基礎(chǔ)。即 SOA 設(shè)計(jì)、SOA 治理與 SOA 安全性

57、以及管理。 讓我們花一點(diǎn)時(shí)間給出一個(gè)實(shí)際的切入點(diǎn)、場(chǎng)景及其實(shí)現(xiàn)。在圖 1 中,可以看到重用切入點(diǎn)如何直接映射到服務(wù)創(chuàng)建場(chǎng)景,而后者包含四個(gè)實(shí)現(xiàn),其中一個(gè)名為“從頭創(chuàng)建新服務(wù)”(create new services from scratch)。因此,將這些加以結(jié)合,在此示例中,您將通過重用切入點(diǎn)進(jìn)入 SOA,此切入點(diǎn)可幫助您對(duì)公司的現(xiàn)有服務(wù)加以充分利用。如果隨后發(fā)現(xiàn)缺少主要 SOA 服務(wù),“從頭創(chuàng)建新服務(wù)”實(shí)現(xiàn)詳細(xì)說明了如何創(chuàng)建 SOA 服務(wù)。,SOA 切入點(diǎn)和場(chǎng)景,您現(xiàn)在應(yīng)該已經(jīng)對(duì)五個(gè) SOA 切入點(diǎn)和八個(gè)場(chǎng)景很熟悉,而且也應(yīng)該知道了每個(gè)場(chǎng)景如何通過多個(gè)實(shí)現(xiàn)幫助您實(shí)現(xiàn) SOA 解決方案。圖

58、1 給出了一個(gè)示例,說明了可以如何將這些部分進(jìn)行混合和匹配,以提供任何企業(yè)都能夠利用的各種 SOA 方法。為了進(jìn)一步說明這些方法,在本文剩下的部分,我們將了解 JK Enterprises 如何在整個(gè)企業(yè)實(shí)現(xiàn) SOA 所帶來(lái)的很多好處。,SAAS,SaaS是Software-as-a-service(軟件即服務(wù))的簡(jiǎn)稱,它是一種通過Internet提供軟件的模式,用戶不用再購(gòu)買軟件,而改用向提供商租用基于Web的軟件,來(lái)管理企業(yè)經(jīng)營(yíng)活動(dòng),且無(wú)需對(duì)軟件進(jìn)行維護(hù),服務(wù)提供商會(huì)全權(quán)管理和維護(hù)軟件,對(duì)于許多小型企業(yè)來(lái)說,SaaS是采用先進(jìn)技術(shù)的最好途徑,它消除了企業(yè)購(gòu)買、構(gòu)建和維護(hù)基礎(chǔ)設(shè)施和應(yīng)用程序的

59、需要,近年來(lái),SaaS的興起已經(jīng)給傳統(tǒng)套裝軟件廠商帶來(lái)真實(shí)的壓力。,SaaS服務(wù)提供模式,SaaS服務(wù)提供商為中小企業(yè)搭建信息化所需要的所有網(wǎng)絡(luò)基礎(chǔ)設(shè)施及軟件、硬件運(yùn)作平臺(tái),并負(fù)責(zé)所有前期的實(shí)施、后期的維護(hù)等一系列服務(wù),企業(yè)無(wú)需購(gòu)買軟硬件、建設(shè)機(jī)房、招聘IT人員,只需前期支付一次性的項(xiàng)目實(shí)施費(fèi)和定期的軟件租賃服務(wù)費(fèi),即可通過互聯(lián)網(wǎng)享用信息系統(tǒng)。服務(wù)提供商通過有效的技術(shù)措施,可以保證每家企業(yè)數(shù)據(jù)的安全性和保密性。企業(yè)采用SaaS服務(wù)模式在效果上與企業(yè)自建信息系統(tǒng)基本沒有區(qū)別,但節(jié)省了大量用于購(gòu)買IT產(chǎn)品、技術(shù)和維護(hù)運(yùn)行的資金,且像打開自來(lái)水龍頭就能用水一樣,方便地利用信息化系統(tǒng),從而大幅度降低了中小企業(yè)信息化的門檻與風(fēng)險(xiǎn)。,SaaS服務(wù)的優(yōu)勢(shì),對(duì)企業(yè)來(lái)說,SaaS的優(yōu)點(diǎn)在于: 從技術(shù)方面來(lái)看:企業(yè)無(wú)需再配備IT方面的專業(yè)技術(shù)人員,同時(shí)又能得到最新的技術(shù)應(yīng)用,滿足企業(yè)對(duì)信息管理的需求。 從投資方面來(lái)看:企業(yè)只以相對(duì)低廉的“月費(fèi)”方式投資,不用一次性投資到位,不占用過多的營(yíng)運(yùn)資金,從而緩解企業(yè)資金不足的壓力;不用考慮成本折舊問題,并能及時(shí)獲得最新硬件平臺(tái)及最佳解決方案。 從維護(hù)和管理方面來(lái)看:由于企業(yè)采取租用的方式來(lái)進(jìn)行物流業(yè)務(wù)管理,不需要專門的維護(hù)和管理人員,也不需要為維護(hù)和管理人員支付額外費(fèi)用。很大程度上緩解企業(yè)在人力、財(cái)力上的壓力,使其能夠集中資金對(duì)核心業(yè)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論