注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

云之南

风声,雨声,读书声,声声入耳;家事,国事,天下事,事事关心

 
 
 

日志

 
 
关于我

专业背景:计算机科学 研究方向与兴趣: JavaEE-Web软件开发, 生物信息学, 数据挖掘与机器学习, 智能信息系统 目前工作: 基因组, 转录组, NGS高通量数据分析, 生物数据挖掘, 植物系统发育和比较进化基因组学

网易考拉推荐

AJAX技术框架及开发工具  

2008-05-15 10:55:07|  分类: java-j2ee |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

AJAX技术框架及开发工具
常见的AJAX框架有:

DWR - Web Remoting
Buffalo - Web Remoting (based on prototype)
prototype - JS OO library
openrico - JS UI component (based on prototype)
dojo - JS library and UI component
qooxdoo - JS UI component (C/S Style)
YUL - JS UI component

其中关于DWR和Buffalo之间的比较,它们都是Web Remoting框架,区别在于:

DWR使用自定义的简单文本协议,而Buffalo使用burlap协议。因此Buffalo解析大数据量可能会比较慢,然而可以适用于多种服务器端和客户端,并且burlap协议的完整性和支持的数据类型更加丰富

Buffalo基于prototype,如果你的AJAX应用也是基于prototype,那么可以减少重复加载prototype的带宽,并且获得相当一致的编程概念

DWR的服务器端实现要比Buffalo完善一些

DWR更加通用一些,用户比较广,而Buffalo是国内的Michael写的,用户使用比较少(名气较小)

建议使用buffalo,相对更加易用,然而服务器端功能有待完善

此外,

prototype是一个非常优雅的JS库,定义了JS的面向对象扩展,DOM操作API,事件等等,之上还有rico/script.aculo.us实现一些JS组件功能和效果(不过目前还不是很完善),以prototype为核心,形成了一个外围的各种各样的JS扩展库,是相当有前途的JS底层框架,值得推荐,prototype以及rico/script.aculo.us的一个特出特点就是非常易学易用,门槛很低,常常是一两行JS代码就可以搞定一个相关的功能。同时它也是RoR集成的AJAX JS库。

qooxdoo是一个功能很强的JS组件库,完全模仿Windows操作系统的GUI组件。特点是不通过常规的HTML来构造页面,完全使用JS以类似VB/Delphi风格的编程方式构造Web GUI界面,比较适合内网面向C/S风格的web应用,,而不适合面向Internet的界面多变风格的应用。qooxdoo的一个重大卖点在于qooxdoo将要提供一个FormDesigner的IDE,通过在IDE里面的可视化拖拽设计方式来自动生成C/S风格的web页面js代码。qooxdoo缺点是JS文件体积过大,超过200KB,初次下载会比较慢,而且并不适合Internet消费类网站。

dojo是一个各个方面相当完善的JS库,包括了JS本身的语言扩展,以及各个方面的工具类库,和比较完善的UI组件库,也被广泛应用在很多项目中,他的UI组件的特点是通过给html标签增加tag的方式进行扩展,而不是通过写JS来生成,dojo的API模仿Java类库的组织方式。dojo的优点就是库相当完善,发展时间也比较长,缺点是文件体积也比较大,200多KB,初次下载相当慢,此外,dojo的类库使用显得不是那么易用,至少给我的感觉是相当笨拙,特别是和prototype相比,更加显得难用。

YUL是Yahoo新近发布的AJAX组件库,也是一个包含了各个方面,从工具类库到通讯,到UI组件的综合性JS库。YUL的优势在于文档非常齐全,而且有Yahoo的支持,缺点是库目前还是不是很全,功能也不强大。

当然,更多的框架和工具介绍:Round-up of 50 AJAX Toolkits and Frameworks
http://www.maxkiesler.com/index.php/weblog/comments/round_up_of_50_ajax_toolkits_and_frameworks/

还有篇AJAX框架汇总:
http://www.duduwolf.com/post/AJAX_Frameworks.asp

我这里选4个介绍认识下:

Google推出Java开发Ajax框架

Google 发布 Google Web Toolkit。Google Web Toolkit是一个开放版本的AJAX Framework,通过它用户可以构建像Google Maps和Gmail之类的Web应用程序。这个Google Web Toolkit beta是免费的,它是一个基于java的工具,并能够和任何java开发工具协同工作。

GWT已经加入到Google的代码库当中,这个代码库包含了很多API和开发工具。Google产品经理Bret Taylor表示,当用户把应用程序部署到产品当中时,GWT编译器只要简单的把用户的java应用程序转换成浏览器支持的JavaScript和HTML就行。

官方站点: http://code.google.com/webtoolkit/

Atlas:微软的Ajax
http://www.cnbruce.com/blog/showlog.asp?cat_id=34&log_id=730

微软致力于简化Ajax风格Web应用的开发,并提供丰富的、可交互的和个性化的用户体验。开发者可以对客户端脚本不甚了解;但他们可以很容易地开发和调试这种应用程序。

出于这一目的,微软启动了一个新的项目,研发代号“Atlas”。Atlas为开发这带来了如下特性:

·Atlas客户端脚本框架
·Atlas的ASP.NET服务器控件
·ASP.NET Web Services集成
·Atlas的ASP.NET构建块
·客户端构建块服务

Buffalo:国人开发的AJAX应用框架

来源:http://news.csdn.net/n/20050609/22073.html

Web开发正逐渐变得有趣。许多以前在C/S系统中才能够实现的效果,Web页面中已经能够逐渐可以实现。由于传统Web系统给人们的惯性,用户对于这些新型应用感到激动,用户体验得到极大程度的改善。

AJAX是开发基于web的rich client的一种方式,Buffalo则是实现AJAX的一个框架。Buffalo中定义了Web远程调用的传输基础,并且将远程调用对象完整的序列化到了本地,成为可以被JavaScript编程触及的对象。Buffalo中的重要组件-BuffaloBinding,提供了将JavaScript对象绑定到HTML元素的能力。这种绑定将是无侵入的,只需要在HTML元素中加入若干个不影响排版的属性,即可将数据与界面绑定。

Buffalo主页: http://www.amowa.net/buffalo/

jsLINB--国人的一个完整Ajax/web2.0技术框架

LINB(Lazy INternet and Browser) 是一个面向程序编写者的软件架构。它的目的是让程序编写者在对软件的全局了如指掌的基础上,实现更目标驱动的、任务清晰的、高效的软件应用。 LINB 是平台无关的架构,兼容 C/S、B/S、RIA 和 Web2.0 等等。

页面上的是LINB架构的 javascript&AJAX 客户端基础:jsLINB。

jsLINB的在线demo:http://www.linb.net/linb/

里面包括变量类型检测、强制类型变量、javascript线程实现、完美OO模型、基于dom id的事件系统实现、dom元素的“随动”实现、高级托拽、sorted grid控件、tree grid控件等等。

jsLINB框架图
变量类型检测
强制类型变量
javascript线程实现
36位guid
基于dom id的事件系统实现
dom元素的“随动”实现
基本拖拽
限制拖拽
拖拽任何domnode
网格拖拽
停靠拖拽
多handle拖拽
图标代理拖拽
多目标drop
快速html生成
DOM控制封装
基于线程的特效
直接调用
完美OO实现
Treebar控件
sorted grid控件
tree grid控件
window控件

===================================

CSDN 十大Ajax框架(排名不分先后) http://subject.csdn.net/ajaxframework.htm

No1—Prototype http://www.prototypejs.org/

特点:一个非常优雅的JS库,定义了JS的面向对象扩展,DOM操作API,事件等等,之上还有rico/script.aculo.us实现一些JS组件功能和效果(尚不够完善),以prototype为核心,形成了一个外围的各种各样的JS扩展库,是相当有前途的JS底层框架,突出特点就是非常易学易用,门槛很低,常常是一两行JS代码就可以搞定一个相关的功能。同时它也是RoR集成的AJAX JS库。

No2—Dojo http://www.dojotoolkit.org/

特点:Dojo包括了Javascript本身的语言扩展,以及各个方面的工具类库,和比较完善的UI组件库;Dojo设计的包加载机制(Package System)和模块化(Libraries)的结构,能保持更好的扩展性,提高执行性能,减轻了用户开发的工作量,并保持一定的灵活性(用户可以自己编写扩展);Dojo官方网站有着丰富的学习资源;专业的开发团队,可以保证更新速度及质量。

No3—Mootools http://mootools.net/

特点:小巧高效,完整下载36k;模块化设计,合理规范,优雅的OOP风格;创新的下载过程,可以跟据自己的需要勾选相应的模块下载,Build Your Own Framework;Effects模块(moo.fx)轻量高效,可以实现优雅、可定制、easing的动画;完整的API文档,丰富的范例。

No4—JQuery http://jquery.com/

  特点:短小精悍(19k),接口设计得精妙(自然语言的风格),与程序思路配合精密。极大限度地体现了javascript的特性;支持xpath查询,dom1-3,轻松选择需要的元素;css支持;简单的动画实现,支持自定义动画;支持插件开发,现有插件多;完整的api文档以及范例,易学;拥有官方UI程序供使用,效果好。

No5—Dwr http://tag.csdn.net/tag/dwr/1.html

特点:把java类转化为javascript类由dwr自动完成,只需简单的配置;应用起来极其简单。开发者不要该服务器代码就可以集成;容易测试。和webwork一样,隐藏的http协议;强扩展性。例如与spring集成,只需修改一点代码;性能。就与jason等简单比较,dwr性能可能是最好的。

No6—Buffalo http://tag.csdn.net/tag/Buffalo/1.html

特点:国人开发的Ajax框架。定义了Web远程调用的传输基础,并且将远程调用对象完整的序列化到了本地,成为可以被JavaScript编程触及的对象。Buffalo中的重要组件-BuffaloBinding,提供了将JavaScript对象绑定到HTML元素的能力。这种绑定将是无侵入的,只需要在HTML元素中加入若干个不影响排版的属性,即可将数据与界面绑定。

No7—Yui http://developer.yahoo.com/yui/

特点:Yahoo发布的AJAX组件库,是一个包含了各个方面,从工具类库到通讯,到UI组件的综合性JS库。YUL的最大优势在于文档非常齐全,而且有Yahoo的支持,缺点是库目前还不全,功能也不强大。

No8—Ext http://extjs.com/

特点:Ext来自于对YUI的扩展,扩展後功能和界面都有了很大的提高。初期仅仅是对YUI的对话框扩展,后来逐渐有了自己的特色,深受网友的喜爱。

No9—Qooxdoo http://tag.csdn.net/tag/qooxdoo/1.html

特点:不通过常规的HTML来构造页面,完全使用JS以类似VB/Delphi风格的编程方式构造Web GUI界面,比较适合内网面向C/S风格的web应用,而不适合面向Internet的界面多变风格的应用。

No10—Spry http://tag.csdn.net/tag/Spry/1.html

特点:设计规范,功能全面,文档丰富,面向设计人员而不是开发人员。与其它一些Ajax框架相比,它的服务器端的技术不是很可靠。它依赖于XML,XML可以很容易被Spry组件接受。

  评论这张
 
阅读(652)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016