国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > AJAX > 正文

初學Ajax須注意的幾個問題

2024-09-01 08:26:00
字體:
來源:轉載
供稿:網友

ajax到底是什么?是一個并不太容易掌握,但可以增加網站交互性的方法?是web2.0的基石?還是又一輪網絡開發(fā)中的跟風?就像以前流行過的閃爍字體、“濺水”頁(譯者:splash page -flash動畫或大圖片做的網站的簡介首頁,往往有個“跳過簡介”或“直接進入”的小按鈕)、和使用圓角(譯者:見yeeyan首頁抬頭,呵呵),只是這次動態(tài)性更強?

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

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

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

誤區(qū)二:看看gmail和google map吧,ajax 會讓你的網站可用性更強。

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

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

事實上,如果有正確的設計和實施,ajax 的網絡應用應該比傳統(tǒng)的cgi類型的,以服務器端處理為主體的(如asp.net或java server pages,jsp)網絡應用具有更好的可擴展性,和讓用戶體驗到更快的反應速度。如需要了解技術細節(jié),請參見ibm的bill higgins寫的有關ajax和rest的第一部分。這是我的總結:傳統(tǒng)的cgi類型的,以服務器端處理為主體的網絡應用,客戶端不保存(網絡應用執(zhí)行的)狀態(tài)(stateless),狀態(tài)的保存完全由服務器實施(stateful server)。這使得服務器產生的結果(譯者:比如動態(tài)從數據庫讀取的數據)只能一次性使用而不能被緩存(cache)下來再利用。這破壞了rest構架中的可擴展性原則。而ajax能將狀態(tài)保存在客戶端,從而實現常用資源,如重復使用的數據和源程序(譯者:應該是指javascript),可以有效被緩存和再利用。

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

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

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

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

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

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

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

我個人最喜歡的有關 ajax 的博客是ajaxian 和 shelley power的“技術女狂人” 。shelley 寫的《添加ajax》很快將會由o'reilly 出版。而本文的寫作參考了bill higgins 的關于ajax和rest構架的文章(第一部分,第二部分。)

聲明:ibm是我的客戶。

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

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 灵宝市| 南通市| 绥德县| 黑山县| 桦川县| 绍兴县| 石泉县| 溧水县| 栾城县| 微山县| 天峻县| 卢湾区| 平南县| 靖安县| 湘阴县| 武鸣县| 蛟河市| 襄樊市| 始兴县| 慈利县| 凉城县| 宁阳县| 无极县| 新津县| 苏尼特左旗| 西华县| 榆社县| 儋州市| 呼图壁县| 龙游县| 瑞昌市| 富蕴县| 微博| 许昌县| 大田县| 宜昌市| 石狮市| 尖扎县| 花莲县| 广水市| 晋城|