惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Know Your Adversary
Know Your Adversary
云风的 BLOG
云风的 BLOG
Recent Announcements
Recent Announcements
F
Fortinet All Blogs
B
Blog
罗磊的独立博客
宝玉的分享
宝玉的分享
Vercel News
Vercel News
Martin Fowler
Martin Fowler
N
Netflix TechBlog - Medium
P
Proofpoint News Feed
T
Threatpost
Security Latest
Security Latest
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Stack Overflow Blog
Stack Overflow Blog
I
Intezer
P
Privacy International News Feed
D
Docker
月光博客
月光博客
博客园 - 三生石上(FineUI控件)
M
MIT News - Artificial intelligence
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
L
Lohrmann on Cybersecurity
Google DeepMind News
Google DeepMind News
The Last Watchdog
The Last Watchdog
A
Arctic Wolf
IT之家
IT之家
S
SegmentFault 最新的问题
S
Securelist
博客园 - 叶小钗
N
News and Events Feed by Topic
F
Full Disclosure
Security Archives - TechRepublic
Security Archives - TechRepublic
Engineering at Meta
Engineering at Meta
Hacker News: Ask HN
Hacker News: Ask HN
博客园 - Franky
GbyAI
GbyAI
AI
AI
Y
Y Combinator Blog
WordPress大学
WordPress大学
Latest news
Latest news
Microsoft Security Blog
Microsoft Security Blog
人人都是产品经理
人人都是产品经理
N
News | PayPal Newsroom
The Cloudflare Blog
www.infosecurity-magazine.com
www.infosecurity-magazine.com
I
InfoQ

博客园 - jchdong

嵌入式软硬件开发的工程师和主管(C#&C++),工作地点重庆 QQ邮箱团队如何打造产品 怎样编辑VSTS2010的过程模板,使工作项可以自定义表单 Project2010 + TFS2010 项目需求管理功能研究 电信行业项目详细设计文档 电信行业项目概要设计文档 总结一个需求架构师在新产品做的几步工作 Asp.net Ajax,ExtJs 两种Ajax技术产生Grid的代码以及性能测试 sql数据库用什么工具导出ER图和链接到数据库 - jchdong - 博客园 20090929 vpn 设置 - jchdong 设置resharp4.0代码自动编译功能选项,暂时禁用 我从校园出来的这几年 Bug 管理系统的想法 测试级别定义 测试人员如何赢得开发人员的尊重 十九种不良生活习惯 邻家的百万富翁! 平时爱吃肉,怎么改 HP大中华区总裁孙振耀退休感言
Asp.net Ajax,Jquery,ExtJs 三种Ajax技术框架比较
jchdong · 2010-01-05 · via 博客园 - jchdong

现有的Ajax从框架角度分级的话,可以有以下分类:

Ø         零级,完成base工作,包括扩展原有对象的方法,Ajax通讯部分,比较精简。

Ø         一级,完成effect工作,包括增加常用效果转换函数,如tween、drag、maskLayer、fade等的特效。

Ø         二级,完成component工作,包括对话框、列表、树、日历等的组件。

Ø         三级,完成application工作,包括完整的前端平台,允许用户定义能实现一定功能的模块。

一些框架只做零级,如Prototype.js,一些框架做到二级,如jQuery ,一些框架做到了三级,如Asp.net Ajax 和EXT。

选择合适的Ajax框架能提升客户体验,减少开发工作量和兼容主流浏览器等作用。
     

1.1  Asp.net Ajax 简介

主页:http://www.asp.net/cn/

特点:
ASP.NET Ajax集成了一套客户端脚本库使得与功能丰富的、基于服务器开发平台的 ASP.NET结合在一起。其服务器端编程模型相对于客户端编程模型较为简单,而且容易与现有的ASP.NET程序相结合,通常实现复杂的功能只需要在页面中拖几个控件,而不必了解深层次的工作原理,除此之外服务器端编程的ASP.NET AJAX Control Toolkit含有大量的独立AJAX控件和对ASP.NET原有服务器控件的AJAX功能扩展。

1.2  Jquery简介

主页:http://jquery.com/

特点:
简洁的思想:几乎所有操作都是以选择DOM元素(有强大的Selector)开始,然后是对其的操作(Chaining等特性)。本身特别容易上手, 代码非常简单,非常贴近原生态的JavaScript,文件也非常小。

1.3  Extjs 简介

主页:http://extjs.com/

特点:
100%
面向对象和组件化的思想,一致的语法,全局的命名空间。文档的完整,规范,方便。所有的组件(widgets)都可直接使用,而无需进行设置

2      性能比较

Ajax 应用程序的性能取决于 Web 应用程序的几个方面:

Ø         服务器响应时间

Ø         网络传输时间

Ø         客户机 JavaScript 的处理时间 

可以用不同的框架制作出程序样例,使用FireBug比较测试其性能

从生成机制来说

Asp.net Ajax 服务器控件会生成其控制代码,本机测试MicrosoftAjax生成原始文件在86k ,加载速度比较快

Jquery原始文件比较小,在20k左右,加载速度比较快

Ext2.0原始文件500多k,加载速度稍慢。

当然可以通过性能优化,减少不必要的加载项,使用缓存等技术提升Ajax的性能。

Asp.net Ajax和ExtJs性能比较参考:

http://www.cnblogs.com/jchdong/archive/2010/01/05/1640012.html

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 2008Eclipse等开发工具同样支持Extjs的智能提示,只要在代码页导入对应的JS脚本就可以实现。该框架也有大量的源示例,它的文档说明很全,而且各种应用也说得很详细.

4      功能比较

4.1      Asp.net Ajax 功能

Asp.net Ajax提供 一套完整的回调框架( UpdatePanelTimer 等控件)和UI 控件(AutoCompleteExtender自动完成,DragOverlayExtender 拖拽PopupExtender添加弹出窗口)实现Ajax特效,通过WebRequest等类比较方便实现异步通讯,同时也较好兼容.NET框架中现有的编程模型。

4.2      Jquery功能

JQuery是一个快速的,简洁的javaScript库,使用户能更方便地处理HTML documentsevents Dom对象。同时也有大量的插件(File upload文件上传,Grid表格,jQchart 图表)实现Ajax特效 。也较方便的实现Ajax异步通讯。

4.3      Extjs 功能

Extjs 和Jquery一样拥有强大的 JavaScript 类库,能方便的处理Html中Dom对象,

可以实现的Ajax特效较多,高亮显示选中的行,推拽改变列宽度,按列排序,支持本地以及远程分页 ,可在tree和grid之间进行拖拽。在处理异步通讯也同样方便。

5       费用比较

Asp.net Ajax 和 其扩展控件是免费集成在VS2008 开发环境中的。

Jquery 框架属于开源框架,暂目前是免费的框架 。

Extjs 2.0 以后需要遵循LGPL协议才能免费使用;否则要付费。

其价格如后列表: