您的位置:首页 > Web前端 > JavaScript

常用的JS(Ajax)框架

2016-11-13 00:57 183 查看
http://blog.csdn.net/lyonte/article/details/5875444

Ajax的全称是:AsynchronousJavaScript+XML 

Ajax的定义:Ajax不是一个技术,它实际上是几种技术,每种技术都有其独特这处,合在一起就成了一个功能强大的新技术。

Ajax包括: 

XHTML和CSS 

使用文档对象模型(DocumentObjectModel)作动态显示和交互 

使用XML和XSLT做数据交互和操作 

使用XMLHttpRequest进行异步数据接收 

使用JavaScript将它们绑定在一起

Ajax本质上是三个基本对象的交互: 

XMLHTTPReuest:是客户端同远程服务器交互的桥梁。 

XMLDOM:客户端和服务器端数据处理的基石。 

HTMLDOM:用户UI的基石。 
***********************************************************************
常用的JS(Ajax)框架:
Extjs 
(yui-ext (JS UI component):
基于Yahoo UI的扩展包yui-ext是具有CS风格的Web用户界面组件能实现复杂的Layout布局,界面效果可以和backbase媲美,而且使用纯javascript代码开发。真正的可编辑的表格Edit Grid,支持XML和Json数据类型,直接可以迁入grid。许多组件实现了对数据源的支持,例如动态的布局,可编辑的表格控件,动态加载的Tree 控件、动态拖拽效果等等。1.0
beta版开始同Jquery合作,推出基于jQuery的Ext 1.0,提供了更多有趣的功能。
优点:结构化,类似于java的结构,清晰明了,底层用到了Jquery的一些函数,使整合使用有了选择,最重要的一点是界面太让让人震撼了。
缺点:太过复杂,整个界面的构造过于复杂。

(ExtJS,前身为YUI,由Yahoo开发的一套UI JS框架,或者叫组件更合适。对界面元素,特别是表单元素的细节及样式处理得十分炫丽。在多数的场合里,该框架担当着界面美化师的角色,为平淡无奇的HTML表单元素提供了华丽的外衣。因此,它的主要用途应当是用在WEB Apps的美化工作,对于WEB页面使用较少。如果真要说优缺点的话,那这个框架的优点就是美观;缺点就是使用范围太小,从而限制了它的用途。

Dojo 
(Dojo (JS library and UI component ):
Dojo是目前最为强大的j s框架,它在自己的Wiki上给自己下了一个定义,dojo是一个用JavaScript编写的开源的DHTML工具箱。dojo很想做一个“大一统”的工具箱,不仅仅是浏览器层面的,野心还是很大的。Dojo包括ajax, browser, event, widget等跨浏览器API,包括了JS本身的语言扩展,以及各个方面的工具类库,和比较完善的UI组件库,也被广泛应用在很多项目中,他的UI组件的特点是通过给html标签增加tag的方式进行扩展,而不是通过写JS来生成,dojo的API模仿Java类库的组织方式。
用dojo写Web OS可谓非常方便。dojo现在已经4.0了,dojo强大的地方在于界面和特效的封装,可以让开发者快速构建一些兼容标准的界面。 
优点:库相当完善,发展时间也比较长,功能强大,据说利用dojo的io.bind()可以实现comet,看见其功能强大非一般,得到IBM和SUN的支持
缺点:文件体积比较大,200多KB,初次下载相当慢,此外,dojo的类库使用显得不是那么易用,j s语法增强方面不如prototype。

prototype 
(Prototype (JS OO library):
是一个非常优雅的JS库,定义了JS的面向对象扩展,DOM操作API,事件等等,以prototype为核心,形成了一个外围的各种各样 的JS扩展库,是相当有前途的JS底层框架,值得推荐,感觉也是现实中应用最广的库类(RoR集成的AJAX JS库),之上还有 Scriptaculous 实现一些JS组件功能和效果。
优点:基本底层,易学易用,甚至是其他一些js特效开发包的底层,体积算是最小的了。
缺点:如果说缺点,可能就是功能是他的弱项

(Prototype,曾经一时的火热,目前不知道情况如何。它的出现,为开发人员提供了一个良好的协作环境,可以基于共同的底层实现方法的扩展,自由度及灵活性得到不小的提高。但底层方法较死板,相对限制较多,但总体来说,它解决了上两种框架的无法自定义扩展的问题。缺点就是对JS技能有要求,想实现一些效果需要自己码代码。

Jquery 
(Jquery :
jQuery是一款同prototype一样优秀js开发库类,特别是对css和XPath的支持,使我们写js变得更加方便!如果你不是个js高手又想写出优 秀的js效果,jQuery可以帮你达到目的!并且简介的语法和高的效率一直是jQuery追求的目标。
优点:注重简介和高效,js效果有yui-ext的选择,因为yui-ext 重用了很多jQuery的函数
缺点:据说太嫩,历史不悠久。

(JQuery,应当是目前网络中使用得最多的框架。由于本身就是为了易用为出发点而设计,因此大多数的方法都是可以即时实现需要的效果。因此,不管是JS的初学者还是高手,只要知道使用方法如何调用及设置,就可以很方便地实现很多很酷很炫的效果。该框架目前已具备较完善的方法集合,如TAB标签,SlideBar及目前炒得火热的Ajax。但该框架有相对较完善的效果注定了这个框架的庞大,易于使用就注定了方法的定形,另外可扩展性不高;虽然有着种种不如人意的地方,但确实给在JS方面云里雾里的用户提供了强大的技术支持。

MooTools 
(mootools :
MooTools是一个简洁,模块化,面向对象的JavaScript框架。它能够帮助你更快,更简单地编写可扩展和兼容性强的JavaScript代码。Mootools跟prototypejs相类似,语法几乎一样。但它提供的功能要比prototypejs多,而且更强大。比如增加了动画特效、拖放操作等等。
优点:可以定制自己所需要的功能,可以说是prototypejs的增强版。
缺点:不大不小,具体应用具体分析


总结

轻量级选择
轻量级的选择:主要是mootools和jquery,由于它们的设计思想的不同,jQuery是追求简洁和高效,Mootools除了追求这些目标以外,其核心在于面向对象,所以jQuery适合于快速开发,Mootools适合于稍大型和复杂的项目,其中需要面向对象的支持;另外,在Ajax的支持上,jQuery稍强一些;在Comet的支持上,jQuery有相关的插件,Mootools目前没有,但是Comet的核心在于服务器的支持,浏览器端的接口很简单,开发相关的插件很简单。
在面向对象的Javascript Library中,mootools逐渐战胜了prototype(体积大,面向对象的设计不合理等),也包括script.acul.ous(基于prototype,实际上就是prototype上的UI库)。

面向RIA的框架
考虑纯JavaScripty库,目前主要是Dojo和ExtJS(还有YUI)。Dojo更适合企业应用和产品开发的需要,因为离线存储、 DataGrid、2D、3D图形、Chart、Comet等组件对于企业应用来说都是很重要的(当然这些组件还要等一段时间才能稳定下来)。例如,BEA基于Mashup技术开发的产品中已经使用了Dojo。
ExtJS:美观和"易用",并且足够强大。在对UI有比较大的需求时,是首选。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: