淺談Ajax的優缺點
本文由碼農網 – 邱康原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃!
AJAX (Asynchronous JavaScript and XML) 是一種互動式動態web應用開發技術,該技術能提供富使用者體驗。完全的AJAX應用給人以桌面應用的感覺。正如其他任何技術,AJAX有它自己的優缺點。下面我列出了一些重要的場景,你在基於web的應用的開發中使用時一定要注意。
AJAX的優點
- 改善的使用者體驗- AJAX提供的更豐富的使用者體驗是其主要優點。AJAX允許網頁持續更新,但只需要和伺服器互動很少的資料。這樣,就能在不必整個更新網頁的情況下更新網頁的一部分。經典的網頁技術必須整個更新網頁(即使你只想更新某一部分),是笨重的。AJAX增強了瀏覽器效能,使更快的瀏覽成為可能因此提供了有求必應的使用者體驗。
- 增強使用者生產力- AJAX 庫提供了物件導向的輔助函式,能給使用者減少麻煩,增強生產力。另外,一個良好配置的ASP.NET應用有它自己的資料訪問層和業務層。最後,“魯棒”的ASP.NET應用包含UI層,在這一層執行伺服器端操作。如果你已經包含了這些特性,AJAX只需要一個額外的AJAX服務層和一些客戶端特性的改進。這樣,開發代價就減小了,使用者生產效率也就增加了。流行的站點如亞馬遜,谷歌,雅虎等等都在開發中使用了AJAX。
- 減少頻寬的使用並增加速度- AJAX使用客戶端指令碼來和web伺服器通訊,用JavaScript來互動資料。使用AJAX能減少網路負載和頻寬使用並且只獲得你所需的資料。這樣能給你更快的介面和更低的響應時間。響應更快因此效能和速度增加了
- 增強相容性- AJAX和ASP.NET,J2EE,PHP或者其他任何語言相容。它幾乎支援所有流行的瀏覽器比如IE5及以上版本,Firefox1.0及以上版本,Safari1.2及以上版本,Opera7.6及以上版本,還有RockMelt。
- 支援非同步處理- 使用XmlHttpRequest來進行非同步資料獲取,這是AJAX應用的中堅力量。所以,請求能被有效的處理,動態內容載入被提升到一個更高的層次,效能也得到了增強
- 減少伺服器請求和網路負載-Atlas,微軟AJAX庫的一種較老的形式,是一個整合了客戶端JavaScript庫並且易用的框架,能和ASP.NET一起開發AJAX應用。它提供了跨瀏覽器支援和麵向物件的API,這用來能開發具有最小化伺服器請求/網路負載的應用,並能實現非同步處理
- 更容易導航-AJAX應用能被用來簡化使用者在網頁間的過渡,而不需要使用傳統的前進後退鍵
AJAX的缺點
瀏覽器不相容-AJAX高度依賴JavaScript,而不同的瀏覽器對JavaScript支援性不同。這成了一個問題,尤其是當AJAX必須跨許多瀏覽器工作的時候。那些不支援JavaScript或者不支援JavaScript某些選項的瀏覽器將不能夠正常使用ajax。由於ajax對JavaScript的依賴性,它不適用移動應用。你的web瀏覽器的後退鍵不能如期執行。
不安全性-網頁可能很難除錯,增加網頁的程式碼量,你的網頁更可能遇上嚴峻的安全威脅。
增加Web伺服器的負載-如果你增加一個自動更新的功能,它每隔幾秒向服務發起請求,那麼就會增加伺服器的負載。
譯文連結:http://www.codeceo.com/article/pros-cons-ajax.html
英文原文:Pros and Cons of AJAX
翻譯作者:碼農網 – 邱康
[ 轉載必須在正文中標註並保留原文連結、譯文連結和譯者等資訊。]
相關文章
- Ajax原理以及優缺點
- 淺談Cookie 缺點Cookie
- 淺談Java、PHP、C++程式設計的優缺點JavaPHPC++程式設計
- Ajax、fetch、axios的區別與優缺點iOS
- 也談SAP系統優缺點
- 什麼是Ajax(Ajax的來歷、執行原理、優缺點及其它)
- Ajax,jQuery ajax,axios和fetch介紹、區別以及優缺點jQueryiOS
- http 請求-01-AJAX(Asynchronous JavaScript and XML)入門介紹, ajax 的優缺點HTTPJavaScriptXML
- 談談nginx和lvs各自的優缺點以及使用Nginx
- 51. ajax幾種請求方式?他們的優缺點?
- 資料互動——Promise、Ajax、axios和fetch的優缺點PromiseiOS
- Docker的優缺點Docker
- 來了解一下Ajax是什麼?Ajax的原理?Ajax與傳統Web比較?Ajax的優缺點?Ajax的Post與Get比較Web
- ajax、axios、fetch之間的詳細區別以及優缺點iOS
- RabbitMQ優缺點MQ
- MySQL索引的優缺點MySql索引
- 繼承的優缺點繼承
- 節點快取的優缺點快取
- MyBatis的優缺點以及特點MyBatis
- 繼承的優點和缺點繼承
- 從我的經驗談談MyISAM、InnoDB、BDB三種資料表的優缺點
- kafka的優缺點都有那些Kafka
- 關於 Cookie的優缺點Cookie
- Serverless架構的優缺點Server架構
- 使用css框架的優缺點CSS框架
- mysql和Oracle的特點,優缺點MySqlOracle
- HTTPS 優點與缺點HTTP
- (Ajax) 淺談 JSONP 的原理與實現JSON
- 線性表順序儲存優缺點,線性連結串列的優缺點
- 談談 ajax 工作過程那點事
- 代理伺服器的優缺點伺服器
- 02 SVN 與 Git 的優缺點Git
- HTTP和RPC的優缺點HTTPRPC
- 單頁應用的優缺點
- 資料中心代理的優缺點
- 雲伺服器的優缺點伺服器
- 物聯網路卡的優缺點
- iOS notification的優勢及缺點iOS