佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > Ajax 的六個誤區(qū)小結(jié)分析

Ajax 的六個誤區(qū)小結(jié)分析

熱門標簽:Linux服務器 團購網(wǎng)站 科大訊飛語音識別系統(tǒng) 服務器配置 阿里云 銀行業(yè)務 電子圍欄 Mysql連接數(shù)設置
就像以前流行過的閃爍字體、“濺水”頁(譯者:Splash page -Flash動畫或大圖片做的網(wǎng)站的簡介首頁,往往有個“跳過簡介”或“直接進入”的小按鈕)、和使用圓角(譯者:見YeeYan首頁抬頭,呵呵),只是這次動態(tài)性更強?

讓我們看看有關Ajax的幾個誤區(qū),撥開迷霧、發(fā)掘真相。

誤區(qū)一:AJAX 是Asynchronous JavaScript and XML 的縮寫。你寫這個詞時,應該用大寫字母拼寫,要不就顯得很無知。

事實上,根據(jù) Ajax 這個詞的創(chuàng)造者Jesse James的介紹,Ajax可不僅僅是個縮寫詞。它是一系列技術用特定方式結(jié)合在一起的整體。它包括JavaScript,CSS, DOM 和運用 XMLHttpRequest 對象進行客戶端與服務器間的數(shù)據(jù)傳輸。從服務器傳到客戶端的數(shù)據(jù)格式不一定是XML,還可以是 JSON(Javascript 中的對象)或其他數(shù)據(jù)格式。總之數(shù)據(jù)的傳輸是少量、遞增的(譯者:而不是傳統(tǒng)的刷新整個頁面)。所以,你要是想顯擺一下自己是很懂的技術高手,用Ajax,而不是AJAX。您自己判斷是不是想顯擺自己吧。

誤區(qū)二:看看Gmail和Google Map吧,Ajax 會讓你的網(wǎng)站可用性更強。

事實上,使用Ajax 有可能讓你的網(wǎng)站可用性增強,但也可能使你的網(wǎng)站變得讓人可憎得難用。全新設計的Yahoo 電視節(jié)目列表就是這樣一個反面教材。(譯者:對新版Yahoo電視節(jié)目列表的反面評價主要認為Ajax的翻頁功能讓原來一頁上列出所有電視節(jié)目的可用性變得更差,比如不能在一頁中進行查找等,雖然翻頁功能本身做得很漂亮。)

誤區(qū)三:Ajax只是面子工程--僅僅是表面上看著挺酷和視覺效果。

事實上,如果有正確的設計和實施,Ajax 的網(wǎng)絡應用應該比傳統(tǒng)的CGI類型的,以服務器端處理為主體的(如ASP.NET或Java Server Pages,JSP)網(wǎng)絡應用具有更好的可擴展性,和讓用戶體驗到更快的反應速度。如需要了解技術細節(jié),請參見IBM的Bill Higgins寫的有關Ajax和REST的第一部分。這是我的總結(jié):傳統(tǒng)的CGI類型的,以服務器端處理為主體的網(wǎng)絡應用,客戶端不保存(網(wǎng)絡應用執(zhí)行的)狀態(tài)(Stateless),狀態(tài)的保存完全由服務器實施(Stateful server)。這使得服務器產(chǎn)生的結(jié)果(譯者:比如動態(tài)從數(shù)據(jù)庫讀取的數(shù)據(jù))只能一次性使用而不能被緩存(cache)下來再利用。這破壞了REST構(gòu)架中的可擴展性原則。而Ajax能將狀態(tài)保存在客戶端,從而實現(xiàn)常用資源,如重復使用的數(shù)據(jù)和源程序(譯者:應該是指Javascript),可以有效被緩存和再利用。

誤區(qū)四:Ajax 對于一般網(wǎng)絡開發(fā)人員很難掌握

Ajax 確實不容易。但它的使用難度正在逐步降低。有若干因素造成Ajax的實施難度:對不同瀏覽器兼容性的支持,開發(fā)工具的不足,以及對開發(fā)人員思維方式轉(zhuǎn)變的要求--從過去以服務器端處理為主體的網(wǎng)絡應用,轉(zhuǎn)變到新的在客戶端保存狀態(tài)、逐步上傳數(shù)據(jù)的應用。但由于Ajax越來越普及,很多開發(fā)工具和平臺提供商以及開源軟件開發(fā)者都在著力解決這一問題。這里列出若干對Ajax開發(fā)員有用的工具:Google 網(wǎng)絡開發(fā)工具箱(給Java開發(fā)員的),dojo跨瀏覽器平臺,script.aculo.us 長于提供視覺效果,以及用來調(diào)試JavaScript 程序、監(jiān)視XMLHttpRequest的(FireFox插件)Firebug,等等。

誤區(qū)五:Ajax 會破壞用戶使用瀏覽器的體驗(Ajax breaks the browser model)

確實,Ajax的應用有可能造成瀏覽器使用的問題,如破壞“返回鍵” 功能,讓用戶不知所以,讓有殘障的用戶完全無法使用網(wǎng)站。但傳統(tǒng)技術也可能產(chǎn)生類似問題:如使用框架(frames)或者Flash往往也會破壞“返回鍵” 功能;即便不用Ajax,糟糕的設計也能讓一個網(wǎng)站把用戶完全搞暈;即便使用最單純的HTML也很難做到讓有殘障的用戶順利使用網(wǎng)站。這些是需要有意識地去注意和學習的方面,并不是僅存在于Ajax應用中的問題。

誤區(qū)六:Ajax 是web2.0的關鍵組成部分

這要看你如何定義web2.0了。我認為web2.0和web1.0的區(qū)別主要在于社會層面而不是技術層面。從web1.0 到web2.0最重要的范式轉(zhuǎn)變(paradigm shift)在于web2.0是雙向的網(wǎng)絡,可讀寫的網(wǎng)絡和社會網(wǎng)絡。而不是“讓我們開家網(wǎng)上商店”的那個網(wǎng)絡。按照這個定義,我們可以完全不用Ajax來實施web2.0。大多數(shù)博客不用Ajax;沒有Ajax,維基百科照樣能煥發(fā)它的異彩;社會化網(wǎng)絡也不需要Ajax;Flickr 之所以吸引人是因為它是一個照片的社會化平臺,而不是它使用的DHTML技術。

更多Ajax的相關資料(譯者:建議深度閱讀、推薦和翻譯)

我個人最喜歡的有關 Ajax 的博客是Ajaxian 和 Shelley Power的“技術女狂人” 。Shelley 寫的《添加Ajax》很快將會由O'Reilly 出版。而本文的寫作參考了Bill Higgins 的關于Ajax和REST構(gòu)架的文章(第一部分,第二部分。)

聲明:IBM是我的客戶。

譯者:壓題圖片是原作者的照片。另外,原文上有原作者詳細的聯(lián)系方式。

標簽:萍鄉(xiāng) 廣元 蚌埠 衡水 江蘇 大理 棗莊 衢州

巨人網(wǎng)絡通訊聲明:本文標題《Ajax 的六個誤區(qū)小結(jié)分析》,本文關鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    潮州市| 廊坊市| 盐亭县| 察雅县| 凉城县| 西平县| 孟村| 三门峡市| 瑞安市| 泉州市| 科尔| 通渭县| 承德县| 洪江市| 正安县| 霸州市| 宜春市| 叙永县| 商南县| 根河市| 广平县| 杭锦后旗| 玉田县| 丰镇市| 苏尼特右旗| 鹤壁市| 正阳县| 新密市| 台东市| 溆浦县| 中阳县| 体育| 师宗县| 绥芬河市| 灵武市| 旌德县| 汶川县| 布尔津县| 济宁市| 正阳县| 巴青县|