現在說ajax是目下最時髦的技術一點不假,當然也有人認為其中有很多炒作的成分;估計兩邊誰也不能說服誰。因此讓我們一起分析為什么ajax在這個時候出現,以及它為什么會繼續成長并且仍將徘徊一段時間。簡言之,我把它歸結為下面列舉的十個最主要的理由。
按數字順序是:
1. xaml,xul,xforms...還未結束
2. 服務器技術不可知論者
3. web 2.0
4. 業界領導們強烈支持采納
5. 與flex和flash良好共處
6. 很低的成本增加
7. 常規web應用軟件的優點
8. 跨瀏覽器和跨平臺
9. 可用性和用戶體驗是第一位的
10. 上面的理由全部基于開放標準!
下面,詳細討論各部分相應細節:
1.開放標準
讓我們按逆序開始分析。ajax是基于有眾多瀏覽器和平臺支持的開放標準的;這意味著,你不必懼怕供應商的鎖定問題。事實上,大多數組成ajax的技術已經被廣泛地使用多年了。這些并不是一些只能在大多數時間才正常工作的熱門的、新的、未經測試的技術。對于大多數用戶和企業來說,現在的瀏覽器是一個值得信任的應用程序平臺;這已經不再是五年前的情形了。對于ajax來說,其轉折點之一是mozilla 1.0的發行-其中,firefox基于并且支持xml http請求對象。這就允許數據的異步傳送-而這對ie來說,已經有數年的可能性了。這一支持以及firefox的迅速采納確實幫助人們認識到,實現跨瀏覽器的豐富的互聯網應用軟件是完全可能的。
1)javascript或ecma script(標準的ecm a-262):關于javascript,值得注意的一件事情是,它經歷了很長一段時間才成為一種被人接受的技術。有相當長一段時間,許多公司都啟用了一種"非javascript"策略!幸運的是,這一切正在快速地改變著。請見http://www.ecma-international.org/publications/standards/ecma-262.htm。
2)xml是廣泛使用的標準,詳見w3c的http://www.w3.org/xml/。
3)html:http://www.w3.org/markup/。
4)css:http://www.w3.org/style/css/。
5)xml http請求對象被internet explorer、基于mozilla的safari和opera瀏覽器所支持。
2.可用性
開發者和設計者開始意識到,用戶體驗不僅大大影響著市場的成功,而且還影響著所有者的成本開銷?;赼jax應用軟件,例如google maps,比更傳統型如mapquest的軟件的成功說明了,能夠提供更好的用戶體驗的產品更容易成功?,F在,在使得web應用軟件更為可用方面,ajax占據著領導地位。它允許頁面從服務器請求少量的信息而代之整個頁面。頁面的這種不斷更新消除了頁面刷新問題和自始至今一直折磨著web應用軟件的緩慢響應問題。
人們意識到,他們需要體面的用戶接口并且愿意在它上面投資。這里的底線在于,如果用戶能夠讓事情做得快一些,那么其中就存在價值問題,而不論該應用程序是一個內網應用程序還是一個公共的web服務。
3.跨瀏覽器和跨平臺兼容性
ie和基于mozilla的firefox占據了當今瀏覽器市場的大部分份額,而且是毫無爭議的最容易的基于之構建ajax web應用程序的瀏覽器;但是現在,有可能在最現代web瀏覽器上構建基于ajax的豐富的互聯網應用程序。這是ajax變得如此流行的一個重要原因。盡管許多開發者知道這在幾年前在internet explorer上也是可能的,但是因為供應商鎖定(或者說是技術壟斷)的原因,這一應用并沒有被挖掘出來。讓我們謝謝mozilla和firefox吧!
4.常規web應用程序的優點
ajax是今天web應用軟件的臉面-而web應用軟件比基于桌面的軟件也有明顯的優點。這些優點包括較低的發布成本、更容易的支持、更短的開發周期及不需要安裝,等等;上面這些僅是自從90年代后期以來使得商界和消費者采納基于web應用軟件的部分優點(原因)。不過,ajax將只能幫助web應用軟件在客戶端方面更好和更為成功些。
5.增長的技巧、工具和技術升級
因為ajax基于事實上的已經出現多年的標準,所以許多開發者至少都已開始探討這種用來構建ajax應用軟件的技術。這意味著,對于開發團隊來說,不需要特別陡的學習曲線就可以實現從html和基于表單的應用程序到豐富的ajax風格的應用程序的遷移。這還意味著,web應用軟件開發團隊可以逐漸地把他們的用戶接口升級到ajax;它不要求大規模的升級和重寫他們的web應用軟件。如果是從90年代后期以來在發布基于瀏覽器的應用軟件方面做了相當大的投資的話,那么能夠平衡現有系統并且能改進用戶體驗將是一件非常吸引人的事情。
6.使用flex和flash
大部分開發社區現在熱論著flash和ajax。在不同情況下,這兩種技術都有非常明顯的優缺點,但是在它們之間也存在大量的協同工作的機會。許多開發者和供應商已經意識到這一點,并且非常和諧的利用ajax和flash技術開發了大量的偉大的軟件。當然,macromedia公司也非??释吹竭@些技術能夠協同工作。
7.采納
為業界領導普遍采納ajax這一事實同時也證明了市場的接受和這一技術群組的有效性。每個人,包括google、yahoo、amazon和microsoft等等,都涌入了這股大軍中。應該說,是google maps真正吸引了者們的注意。當人們開始分析google怎么能夠在瀏覽器中沒有任何插件的情況下實現這樣一種令人難以置信的用戶體驗的時候,他們發現ajax這種潛在的技術。
當然,只有google利用ajax做了點什么是不可能使得ajax應用到主流企業中的。但是,如果你看一下例如ebusiness applications(www.ebusinessapps.com)或tibco(http://www.tibco.com)等ajax開發公司的顧客列表,那么你將看到全球500強企業,包括主要的金融機關、管理機構、航空部門和其它主要行業,都在采納ajax,并且在"ajax"術語出現之前就已經這樣做了。
8.web 2.0
愛它?恨它?web 2.0運動正處于全面的搖擺之中,而且正改變著幾乎所有程序員、vc、商人和終端用戶等的思想。這就明確說明,ajax技術將會被暫時采納;當這一炒作最終平靜下來的時候,人們將會有趣地看到所發生的一切。ajax接口是許多應用軟件,如從backpack到google maps的web 2.0等等,的一個關鍵組件。很可能,這一炒作會幫助加速對于ajax的采納并且其可用性優點將使之應用到很多領域。web 2.0的關鍵原則之一是,使web成為一個應用程序開發的平臺,而不僅僅是web頁面的問題。高實用性和高交互性的用戶接口是任何應用程序平臺的關鍵的部分。
9.ajax是服務器不可知論者
與ajax是瀏覽器獨立的一樣,它也完美兼容于任何標準web服務器和服務器端語言中。php,asp,asp.net,perl,jsp,cold fusion,等等-你可以自由選擇并著手構建。這大大幫助推動了ajax技術的應用,因為所有的者都能使用并且在一個通用描述層上進行表達。
10.下一代web ria技術還沒有出現
今天用xul構建應用程序是很偉大的事情;但是,因為它不能被90%的瀏覽器所支持,所以在大多數情形下它還不能被認為是一種非常實際的解決方案。然而,ajax程序員應該密切關注例如xaml和xul等技術的發展。毫無疑問,這些技術將更易于開發豐富的互聯網應用軟件,但是它們彼此相沖突并且還不存在相同的市場滲透或者動力。
ajax對于改變當今已經存在的web應用軟件的可用性方面是偉大的。然而,ajax并不完美,它不是"火箭科學"并且許多開發者和技術公司在一直嘗試著研發更好的技術以用于ria。事實是,ajax已經出現并且被投入使用,它是跨瀏覽器和跨平臺的,并且用戶和開發者都喜歡它所能完成的功能。高度結構化的ajax應用軟件,例如google maps,已經明確地出現在它們的領域并成為其中的領導者(誰還會再使用mapquest?)。同樣,領先世界的全球500強企業正在使用ajax并且甚至向社區回貢一些工具。業界已經普遍地同意內在的ajax技術并且開始使用它們。不斷更新的豐富的互聯網應用軟件和一種在瀏覽器技術方面的關鍵進步已經使得ajax不僅是一個在開發者的工具包中的新工具,而且成為一種現象-正在改變著web應用軟件的書寫方式。沒人能確定地說用什么或者什么時候ajax會成為更為人們喜歡的豐富的互聯網應用軟件平臺;但是,在隨后的幾年中會一直存在許多因素支持ajax。
新聞熱點
疑難解答
圖片精選