Asp.net Ajax,Jquery,ExtJs 三種Ajax技術框架比較
瀏覽量:4048
1 現流行的ajax框架技術簡介
現有的ajax從框架角度分級的話,可以有以下分類:
Ø 零級,完成base工作,包括擴展原有對象的方法,ajax通訊部分,比較精簡。
Ø 一級,完成effect工作,包括增加常用效果轉換函數,如tween、drag、masklayer、fade等的特效。
Ø 二級,完成component工作,包括對話框、列表、樹、日歷等的組件。
Ø 三級,完成application工作,包括完整的前端平臺,答應用戶定義能實現一定功能的模塊。
一些框架只做零級,如prototype.js,一些框架做到二級,如jquery ,一些框架做到了三級,如asp.net ajax 和ext。
選擇合適的ajax框架能提升客戶體驗,減少開發工作量和兼容主流瀏覽器等作用。
1.1 asp.net ajax 簡介
特點:
asp.net ajax集成了一套客戶端腳本庫使得與功能豐富的、基于服務器開發平臺的 asp.net結合在一起。其服務器端編程模型相對于客戶端編程模型較為簡單,而且輕易與現有的asp.net程序相結合,通常實現復雜的功能只需要在頁面中拖幾個控件,而不必了解深層次的工作原理,除此之外服務器端編程的asp.net ajax control toolkit含有大量的獨立ajax控件和對asp.net原有服務器控件的ajax功能擴展。
1.2 jquery簡介
特點:
簡潔的思想:幾乎所有操作都是以選擇dom元素(有強大的selector)開始,然后是對其的操作(chaining等特性)。本身非凡輕易上手, 代碼非常簡單,非常貼近原生態的javascript,文件也非常小。
1.3 extjs 簡介
特點:
100%面向對象和組件化的思想,一致的語法,全局的命名空間。文檔的完整,規范,方便。所有的組件(widgets)都可直接使用,而無需進行設置
2 性能比較
ajax 應用程序的性能取決于 web 應用程序的幾個方面:
Ø 服務器響應時間
Ø 網絡傳輸時間
Ø 客戶機 javascript 的處理時間
可以用不同的框架制作出程序樣例,使用firebug比較測試其性能
從生成機制來說
asp.net ajax 服務器控件會生成其控制代碼,本機測試microsoftajax生成原始文件在86k ,加載速度比較快
jquery原始文件比較小,在20k左右,加載速度比較快
ext2.0原始文件500多k,加載速度稍慢。
當然可以通過性能優化,減少不必要的加載項,使用緩存等技術提升ajax的性能。
3 易用性比較
3.1 asp.net ajax的使用
和vs2008 開發環境集成,開發和調試非常方便。
通常實現復雜的功能只需要在頁面中拖幾個控件,而不必了解深層次的工作原理,除此之外服務器端編程的asp.net ajax control toolkit含有大量的獨立ajax控件和對asp.net原有服務器控件的ajax功能擴展,實現起來也非常簡單。網上有大量的書籍,源碼和視頻 資料,同時也是微軟官方社區支持的。
3.2 jquery 的使用
微軟的visual studio 2008 sp1支持對jquery的動態提示,只要在代碼頁導入對應的vsdoc腳本就可以實現智能提示。該框架也有大量的示例它的文檔說明很全,而且各種應用也說得很具體,同時還有許多成熟的插件可供選擇.
3.3 extjs 使用
微軟的visual studio 2008,eclipse等開發工具同樣支持對extjs的智能提示,只要在代碼頁導入對應的js腳本就可以實現。該框架也有大量的源示例,它的文檔說明很全,而且各種應用也說得很具體.
4 功能比較
4.1 asp.net ajax 功能
asp.net ajax提供 一套完整的回調框架( updatepanel,timer 等控件)和ui 控件(autocompleteextender自動完成,dragoverlayextender 拖拽,popupextender添加彈出窗口)實現ajax特效,通過webrequest等類比較方便實現異步通訊,同時也較好兼容.net框架中現有的編程模型。
4.2 jquery功能
jquery是一個快速的,簡潔的javascript庫,使用戶能更方便地處理html 的documents、events 等dom對象。同時也有大量的插件(file upload文件上傳,grid表格,jqchart 圖表)實現ajax特效 。也較方便的實現ajax異步通訊。
4.3 extjs 功能
extjs 和jquery一樣擁有強大的 javascript 類庫,能方便的處理html中dom對象,
可以實現的ajax特效較多,高亮顯示選中的行,推拽改變列寬度,按列排序,支持本地以及遠程分頁 ,可在tree和grid之間進行拖拽。在處理異步通訊也同樣方便。
易勢科技后臺使用extjs開發,穩定 快速反應。