我的一亩三分地 我就喜欢!
13fen  设为主页
 收藏本站
 
当前位置: > 一亩三分地:首页 > 网络学院 > 网络编程 > net专区 > 基于Ajax的应用程序架构设计汇总
热门文章排行
热门文章排行 检查email地址格式的代码(01-11)
PHP操作文件问答(01-11)
PHP安装攻略:安装并配置PHP(10-23)
PHP的十个高级技巧 4(10-23)
关于APE的介绍、播放及制作(03-22)
精采文章排行
精采文章排行 ASP.NET与MySQL数据库简明图示入门教(11-16)
ASP.NET与MySQL数据库简明图示入门教(11-16)
ASP.NET 链接数据库基础(11-16)
webconfig的设置节点说明(11-16)
部署ASP.NET的三大技术(上)(11-16)
技术专题推荐
网管论坛交流
 

基于Ajax的应用程序架构设计汇总 

作者:佚名   来源:Linux 宝库   点击:   日期:2006-12-22

1 浏览器端框架被划分成两大类


•应用程序框架:提供浏览器的功能,但是常以包括窗口小部件抽象和另外的部件而出名,其功能主要围绕桌面GUI框架。


•基本结构框架:提供基本的管道和可移植的浏览器抽象,让开发者去创建内容。典型的功能:


* 针对XMLHttpRequest的包装器以封装浏览器-服务器的交互。(所有的框架都提供这一功能)。


* XML操作和查询。


* 根据来自XMLHttpRequest的应答执行DOM操作。


* 在一些情况中,与另外的浏览器端技术如Flash(和潜在的Java applets)集成在一起。


而服务器端框架通常以下面两种方式工作(尽管它们在这里根据语言的不同进行了分类):


•HTML/JS生成:服务器提供完整的HTML/Javascript代码生成和浏览器-服务器协调,结果是只有浏览器端编码可以被定制。


•远程调用:Javascript调用直接被路由到服务器端功能(例如Java方法)并返回到Javascript回叫处理器;或者Javascript调用服务器以提取信息,例如会话细节,数据库查询等。


•纯Javascript:应用程序框架


1.1 Bindows(自从2003年)


网址是:http://www.bindows.net,Bindows是一个软件开发包(SDK),它,通过强力联合DHTML,JavaScript,CSS和XML等技术,能生成高度交互的互联网应用程序-成为现代的桌面应用程序的强有力对手。Bindows应用程序不要求下载和也不需要在用户端安装-仅要求有一个浏览器(也不需要Java,Flash或者ActiveX)。Bindows有可能领导面向对象开发的AJAX应用程序的平台。


•它是商业化的,使用来自于MB的技术(总部位于GA USA,主要开发中心在瑞典,成立于2002年)。


Bindows框架提供给你:


•基于类的面向对象的API


•一套完整的窗口系统,提供宽范围的窗口小部件支持,包括菜单、表单、格子、滑动条、量程,甚至更多


•用于开发zero-footprint SOA客户端应用程序的领先的工具箱


•本机的XML,SOAP和XML-RPC支持


•单用户到企业级的支持


•内建的对AJAX的支持


Bindows开发环境:


•支持企业级规模的工程开发


•跨浏览器,跨平台支持


•服务器独立结构


•与新的和现有资源的互操作性


•一致性开发方法学


1.2 BackBase(自从2003年)


网址是:http://www.backbase.com,是一个全面的浏览器端框架,支持丰富的浏览器功能以及与.NET和Java的集成。


•商业化,来自于Backbase B.V(总部在Amsterdam,成立于2003年)。


1.3 DOJO(开发中;自从2004年9月)


网址是:http://dojotoolkit.org/,提供全面窗口小组件和浏览器-服务器消息支持。


•为创建定制的Javascript窗口小组件提供框架支持。


•预置的窗口小组件库。


•浏览器-服务器消息支持-XMLHttpRequest和另外的机制。


•支持浏览器中的URL操纵功能。


•开源许可(学术自由许可2.1(http://opensource.org/licenses/afl-2.1.php)),由JotSpot(http://www.jot.com/)的Alex Russell(http://alex.dojotoolkit.org/)所领导。


1.4 Open Rico(开发中;自从2005年5月;基于早期的私有框架)


网址是: http://openrico.org/demos.page,是一多用途框架,支持Ajax基础结构和用户交互。


•一个XMLHttpRequest应答能被路由到一个或者更多回叫操作,DOM对象,或者Javascript对象。


•容易鼠标拖动支持。


•Ajax动画,例如缩放和变换。


•"行为"-实质上是窗口小组件库。


•使用指南(http://www.mirimar.net/mailbrowser/),由RussMirimar的Yonah所提供


•开源。源于Sabre航空公司解决方案,由Bill Scott(http://looksgoodworkswell.blogspot.com),Darren James及另外一些人所支持。


1.5 qooxdoo(开发中;自从2005年5月)


网址是:http://qooxdoo.sourceforge.net/,是另一个雄心勃勃的框架,提供宽范围的UI支持和正在开发中的基础结构特性。


•基础结构:


* DOM和事件/焦点管理的可移植的抽象。


* 调试支持。


* 易于时间调度的Timer类。


* Getter/Setter支持。


•UI:


* 窗口小组件框架和预置的窗口小组件库。


* 布局管理器。


* 图像缓冲和可移植的PNG透明性。


•开源(LGPL)。来自多方面的贡献者。


1.6 Tibet(开发中;自从2005年6月)


网址是:http://www.technicalpursuit.com/,目的是提供高度可移植的和全面的Javascript API,结果是,可能自动生成大量的客户端代码。自称是"企业级Ajax"。


•远程脚本运行在XMLHttpRequest包装之上-通过协调调用结果支持工作流管理,例如应答可以发生在只有当两个分离的调用返回时。


•URI支持。


•所有的HTTP方法-不仅是"GET"和"POST"。


•低级的协议-File://和WebDav以及HTTP。


•Web服务调用-SOAP,XML-RPC,等等。


•预置的针对Google API,Amazon API等等服务的支持。


•由高级Javascript对象组成一个巨大的库。


•许多XML操作。


•IDE和开发工具。


•开源许可(显然经过OSI认证,但是细节不多)。


2 纯Javascript:基础结构框架


2.1 AjaxCaller(Alpha版本;自从5月2005年)


网址是:http://ajaxify.com/run/testAjaxCaller/,是一基本的线程安全的XMLHttpRequest包装器,主要针对Ajax新手,仍处于原始的alpha开发阶段,目前仅与AjaxPatterns的在线搜索范例一起打包。


•实现对服务器的调用(GET/POST/PUT/DELETE),用路由到一个回叫操作的plain-text或者XML完成。


•使用过的XMLHttpRequest对象的析构。


•Response缓冲(计划的)。


•针对Ajax新手-并非强调性能优化,该库主要用于实现易读的基础代码并将提供调试支持。


•开源许可。由Michael Mahemoff(http://softwareas.com)(具有John Wehr和Richard Schwartz的一些思想)维护。


2.2 Flash JavaScript集成包


网址是:http://www.osflash.org/doku.php?id=flashjs,允许JavaScript和Flash内容的集成:


•使JavaScript能够调用ActionScript功能和反过来的实现。


•所有主要的数据类型能在这两种环境之间传递。


•开源许可。由多个开源Flash贡献者提供支持。


2.3 Google AJAXSLT(发行于2005年6月)


网址是:http://goog-ajaxslt.sourceforge.net/,是一个Javascript框架,用来执行XSLT转换以及XPath查询。


•建立在Google地图工作基础之上。


•开源许可(BSD)。由一家创新搜索方案公司支持,自称为"Google"。


2.4 HTMLHttpRequest(Beta版;始于2005年)


HtmlHttpRequest(http://www.twinhelix.com/javascript/htmlhttprequest/),它使用了XMLHttpRequest和Iframes以改进兼容性。


•测试过并能工作在:IE6/Win,IE5.5/Win,IE5/Win,IE4/Win,Mozilla/Win,Opera7/Win,Safari/Mac,IE5/Mac。


•未测试,可能能工作在:IE4/Mac,Mozilla/Mac,Opera/Other,Konqueror/Linux。你正在使用这些之一吗?作者正在请求兼容性信息。


•开源许可(LGPL)。由Twin Helix Designs(http://www.twinhelix.com/)的Angus Turnbull维护。


2.5 交互式网站框架(自从2005年5月)


交互式网站框架(http://sourceforge.net/projects/iwf/,是一个项目,目的是从浏览器端对Ajax基础结构的多方面予以支持。自描述为"使用javascript,css,xml,和html来创造高度交互网站的框架。包括一个定制的针对高度可读的javascript的xml分析器。实质上,是建立基于AJAX的网站的基础,还有另外一些通用脚本"。


•线程安全的XMLHttpRequest实现。


•针对XML文档的包装器,以便你能够创建更具可读性的代码:


var node = doc.groceries.frozen[0].pizza[0].size;



代替手工的导航:


var node = doc.documentElement.firstChild.firstChild.getAttribute("size");



•开源许可。由Weaver(http://circaware.com|Brock)维护。


2.6 LibXMLHttpRequest(发行于2003年6月)


libXmlRequest(http://www.whitefrost.com/servlet/connector?file=reference/2003/06/17/libXmlRequest.html),是XMLHttpRequest的一个瘦包装器。


•getXML()和postXML()方法。


•XMLHttpRequest对象池支持。


•Response缓冲。


•可用源码(明显),但是受标准版权的保护,由Stephen W.Coate(http://www.whitefrost.com/index.jsp)所维护。


2.7 RSLite(x)


网站是: http://www.ashleyit.com/rs/main.htm,是一个针对XMLHttpRequest的瘦包装器。


•一个简单的组件,作为Brent Ashley的更全面的远程脚本工作(参见Javascript远程脚本-JSRS在多语言服务器端)的一部分发行。


2.8 Sack(在开发中,自从2005年5月)


网站是: http://twilightuniverse.com/2005/05/sack-of-ajax/,是一个针对XMLHttpRequest的瘦包装器。


•调用者能指定回叫函数或者回叫DOM对象。借助于回叫DOM,应答文本直接被推入到DOM中


2.9 Sarissa(发行于2月,2003年)


网站是:http://sarissa.sf.net,是一种Javascript API,它封装了在浏览器端可以独立调用XML的功能。



•可移植的XMLHttpRequest创建


•可移植的XPath查询


•可移植的DOM操作


•可移植的XSLT


•可移植的XML串行化


•开源(GPL2.0和LGPL2.1)。来自多方面贡献者。


2.10 XHConn(发行于自从4月,2005年)


网站是: http://xkr.us/code/javascript/XHConn/,是一个对XMLHttpRequest的瘦包装器。


•例如


new XHConn().connect("mypage.php","POST","foo=bar&baz=qux",fnWhenDone);


•开源许可。由Brad Fults所维护。







文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【论坛讨论

   相关文章:
·给你的FileSystemObject对象加把锁 ·在 Web 页上使用条件数值格式
·连接数据库查询手册(不仅仅适用于asp) ·警惕"给你的FileSystemObject对象加把锁"
·用ASP做全文检索 ·如何把ASP编写成DLL

   文章评论:(条)
  
 请留名: 匿名评论   点击查看所有评论 网管论坛
 

  责任编辑:一分  声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。