`
青城天下幽
  • 浏览: 11083 次
  • 来自: ...
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

[转]RIA技术代表--AJAX标准与规范的研究

阅读更多

RIA技术代表--AJAX标准与规范的研究

引言

在过去的两到三年中,Web开发人员一直是想构建一种比传统HTML更丰富的客户端:这是一个用户接口,它比用 HTML能实现的接口更加健壮、反应更加灵敏和更具有令人感兴趣的可视化特性,这就是RIA(Rich Internet Application)技术,即富互联网应用程序。RIA技术的出现允许我们在因特网上以一种像使用Web一样简单的方式来部署富客户端程序,作为一种趋势性和可能长期支撑市场的技术,国外的众多公司及组织毫无例外地加入了争夺RIA话语权的行列,包括Adobe主推的 Flash/Flex,微软的SilverlightSmart ClientActiveXSunJava Applet还有MozillaXUL等等,当然,目前正炙手可热的AJAX技术,由于具有W3C的基础标准及现实浏览器的完全支持,更是RIA最具有代表性和现实性基础的技术解决方案,。

然而,2005AJAX诞生以来,AJAX技术应用上标准和规范的欠缺却直接导致了技术发展上的混乱,不同技术体系和开发语言不利于应用的整合和统一,标准基础支撑和集成开发工具的欠缺,很大程度限制和影响了应用开发及AJAX技术的发展……

AJAX呼唤标准与规范

自从AJAX概念确立,AJAX产品纷纷涌现,但大多数都只是基础框架和Toolkit,并只能够支持某一种开发语言,PHPSAJAXAJASONJavaDWR.NETAJAX PRO,客户端的类库有DojoADLBindows……,面对这一系列分属服务端、客户端、不同语言的框架和类库,让开发者无所适从,更不知道如何集成融合使用,AJAX标准和规范的欠缺直接导致了技术发展上的混乱,不同技术体系和开发语言不利于应用的整合和统一,标准基础支撑和集成开发工具的欠缺,很大程度限制和影响了应用开发及AJAX技术的发展,甚至由于AJAX技术的不成功应用引发屡屡挫败的风险。

       计算机行业是一个新兴的领域,回顾技术发展的历程,无一不是在形成良好标准的前提下取得迅速及长远发展,由于缺乏规范造成的停滞不前以及终端市场的巨大损失屡见不鲜,AJAX技术做为一种新的应用开发模式和多种技术手段的融合,一开始就缺乏标准化组织和良好的基础,直接导致在它的概念出现两年后,虽然百家争鸣,却始终无法取得快速的大规范应用和广泛的成功,却往往给使用者带来了巨大的困扰和障碍,现在的局面可以这样说,如果AJAX再不建立全面的规范和标准,并在此基础上逐渐形成架构、框架及进一步发展快速开发工具,那么AJAX很可能会逐渐变成一种噱头并成为过渡性的技术,一旦新的互联网技术标准得到大幅的改善和重要厂商的支持,那么AJAX技术将面临被迅速淘汰的处境,现有基于AJAX的系统生命周期大幅缩短,人们的投入将受到严重损失。

与传统Web在交互操作标准上的差异

AJAX的重要结果就是直接改变了传统Web的用户体验和交互模式,在这里我们要提

Web操作系统环境这个概念,Web操作系统环境是指由于AJAX新的用户体验直接造成与传统Web界面使用模式的不同,需要建立新的交互操作模式标准,类似Windows操作模式,比如桌面模式、功能程序的启动、开始菜单、托盘、任务管理、右键、快捷键、多选、拖拉操作等等。这些新的操作模式是以往的传统网站所没有的,因此我们首先应当建立一套能够让大多数用户保持习惯并简单易用的规范交互环境。

另一方面,Web操作系统环境应当以开放式的结构提供完整的应用开发接口(API),

API涉及系统内核、注册表、进程管理、系统元件管理、用户管理、用户配置环境比如主题、语言区域、托盘管理、内存管理、软件安装集成、基础界面元件等等。

作为Web操作系统环境的底层,消息通道机制是AJAX应用程序间进行协同运行的

底层支撑,传统的Web是单页面多网页操作模式,缺乏多窗体多应用协同和交换。消息通道主要的核心是消息编号的规范、消息体的定义、消息的同步发送、消息的异步发送、消息的定向发送、消息的侦听及消息的响应。

       Web操作系统环境涉及的内容比较多并且相当复杂,包括网络式文件系统、网络共享与访问、在线通信、应用集成、进程管理、内存管理等等,这一系列AJAX全面应用的基础支撑需要制订完善的规范和实现。

AJAX应用程序标准的急迫

从用户使用角度,AJAX应用是以应用程序的形态表现出来的,AJAX应用程序是指以AJAX技术实现为基础,能够提供完整应用功能的Web应用软件,它具有所属的代码、数据,能够在同一浏览器进程中同时运行多个拷贝。

AJAX应用程序部署在Web服务器上,通常由javascript文件、网页文件、资源文件、应用数据组成,主体执行文件后缀名为.jsWeb操作系统环境能够动态载入AJAX应用的主体执行文件并调度管理AJAX应用程序的启动、激活、关闭等。

AJAX应用程序的主文件通常是一个javascript文件,后缀名为.js,在这个文件中定义有此应用程序的MainClass,并有相应的程序入口方法;AJAX应用程序都具有一个MainClassMainClass有统一的入口方法MainMain方法具有由网络式操作系统传来的数组类型参数;应用程序入口参数可以作为多个应用程序间互相调用传递参数的方法之一;AJAX应用程序应当有统一的进程接口,在我们的实践中通常继承于js.lang.Process类;应用程序的入口方法中应当调用Register方法向网络式操作系统注册,从而将应用进程实例加入到网络式操作系统的列表中;一般来说,运行具有界面的AJAX应用程序将有一个MainWindow属性,指向一个窗体对象的引用,一般来说,MainWindow将在Main方法中创建并显示。另外,AJAX应用能够被被网络式操作系统管理调用运行,除了以javascript调用的方式,网络式操作系统支持文件执行启动AJAX应用,这需要定义AJAX应用描述文件,称为快捷运行方式定义,网络式操作系统的Shell能够在.js文件打开时识别对应的快捷运行方式,并根据快捷运行方式定义的mainclassparams来启动AJAX应用。

AJAX应用的基础支撑----AJAX类库标准

AJAX框架及类库目前的发展来看,正处于百家争鸣,各自为先的时代,AJAX类库标准主要用于AJAX Class设计开发的基础部分规范之一,旨在通过对AJAX Toolkit设计与实现的统一规划和设计、AJAX Class的功能设计、编程模式和接口的约定,达到不同应用层面、不同提供商的AJAX ClassToolkit具有类似的使用习惯、调用接口并能够充分整合一体使用的目的,同时符合此标准的AJAX ClassToolkit能够被任何第三方IDE所配置集成……

首先应从架构和框架上建立整体的模型,同时注重设计合理的结构层次,可供参考的AJAX框架标准和结构层次如下:

<!----><!----><!----><!---->

Object—

       |_Component

              |_Container

              |      |

              |_DHtml

                     |_UI Component

                            |_DB UI Component

       |_Other Class

 

由于目前AJAX类库市场的格局非常不明朗,不同厂商的产品无法整合互用,甚至无法兼容运行,对于AJAX类库标准规范的制定应该是当前的第一任务,比如就名称空间、命名规范、类引用、资源相对定位、类继承、界面容器规范、设计模式、开发语言与浏览器、操作系统的兼容支持性、语言与区域国际化、可替换风格设计、通讯方式兼容与支持、跨域访问兼容性、2D图形API与兼容等等各方面的规范都急需出台,在当前的形势下,也许只能随着时间逐渐形成大家事实接受的统一模式,然后再整理制订和发展公共的标准规范。

AJAX的发展任重道远

根据国外的发展形势,包括IBM、微软、Adobe等大公司都已在投入AJAX的大力推动,另外,多家公司支持的Open AjaxFAC等开源组织也开始付诸行动,从最新的信息看来,他们已开始了初步的标准探讨和起草工作,有了这么多组织和开发者的努力,相信很快AJAX技术的发展就能够进入正轨和有效的引导。

以上阐述仅仅是提出了AJAX技术相关几个方面的初步标准框架,对于AJAXAJAX

应用这样的庞大体系是远远不够的,我们在实际的AJAX可视化开发工具及AJAX在线操作系统、AJAX在线软件的研制过程中,不断地总结完善,与实践互相印证,深刻认识到标准对于一个领域和一系列产品发展的重要性和决定性意义,相信越来越多的组织和公司将投入AJAX相关标准和规范的研究和起草,为AJAX技术的长远发展奠定基础。

 

作者简介:

       张 健,网名“testdll”,负责AJAX IDE和在线操作系统产品。专注于AJAX、构件化、Web OS等领域,在AJAX领域有着多年构架和开发经验。ADL开源项目发起者之一,Web OS项目TOMOS开发者之一。个人邮箱:testdll@163.com

 

 

 

评论

相关推荐

    dojo-0.4.3-ajax

    "dojo-0.4.3-ajax" 是一个与Dojo Toolkit相关的版本,专注于Ajax功能的实现。Dojo Toolkit是一个开源的JavaScript库,旨在提供一套全面的工具,用于开发富互联网应用程序(RIA)。在这个特定的版本0.4.3中,重点在于...

    AJAX探秘与RIA深度挖掘

    AJAX(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它的核心在于JavaScript的XMLHttpRequest对象,该对象允许开发者在后台与服务器交换数据并更新部分页面...

    ArcGIS RIA开发实践--FLEX

    本篇文章将深入探讨ArcGIS RIA(Rich Internet Application)开发实践,特别是使用FLEX作为前端技术的情况。我们将讨论Flex API的使用、RIA开发背景以及实际的开发实践。 首先,让我们来理解什么是Flex。Adobe Flex...

    dojo-0.4.2-ajax.rar

    这个“dojo-0.4.2-ajax.rar”压缩包包含的是Dojo工具库的一个早期版本0.4.2,专注于Ajax功能。Ajax,全称Asynchronous JavaScript and XML,是一种在不刷新整个网页的情况下,与服务器交换数据并更新部分网页的技术...

    RIA大讲堂- Flex基础培训实例练习.rar

    本压缩包“RIA大讲堂- Flex基础培训实例练习.rar”显然是一个与Flex学习相关的资源包,特别适合初学者进行实践操作,提升Flex开发技能。 在Flex中,开发者可以利用强大的图形用户界面组件库,创建出具有丰富用户...

    Ajax学习笔记---3种Ajax的实现方法【推荐】

    2. **Flash / Flex (Adobe) / Silverlight (Microsoft)**:这些是基于浏览器插件的富互联网应用(RIA)技术,提供了与Ajax类似的功能,但它们更侧重于图形和多媒体内容的展示。 ### Ajax解决了什么问题 传统的网页...

    Web 2.0 Security - Defending Ajax, RIA, and SOA.pdf

    ### Web 2.0安全:保护Ajax、RIA与SOA #### 一、概述 《Web 2.0 Security: Defending Ajax, RIA, and SOA》是一本由Shreeraaj Shah编写的权威性著作,深入探讨了在Web 2.0环境下如何有效地保护诸如Ajax...

    RIA及技术与用户体验

    **RIA(Rich Internet Applications)**是指富互联网应用程序,它代表了一种互联网应用的新模式,旨在提供与桌面应用程序相媲美的用户体验。RIA 不依赖于特定的技术或编程语言,而是强调通过高度交互性和丰富的图形...

    RIA应用开发:7-创建Ajax应用.ppt

    在RIA应用开发中,Ajax(Asynchronous JavaScript and XML)技术扮演着重要角色,它允许网页在不完全刷新的情况下与服务器进行数据交换,从而提升了用户体验。 创建Ajax应用的关键在于XMLHttpRequest对象,这是Ajax...

    SAP 2008 技术大会 RIA与RCA 演讲稿

    ### SAP 2008 技术大会 RIA与RCA 演讲稿解析 #### 一、背景介绍 SAP作为全球领先的商业软件解决方案提供商,在2008年的技术大会上介绍了关于RIA(Rich Internet Application,丰富互联网应用)与RCA(Rich Client ...

    Ajax,RIA与Web开发程序员教程代码示例(ch02)

    5. **Ajax与事件处理**:讨论如何结合Ajax与JavaScript事件,如按钮点击触发Ajax请求,或者在请求完成时执行某些操作。 6. **Ajax库的使用**:以jQuery为例,讲解其简化Ajax调用的方法,如$.ajax()、$.get()、$....

    J007-RIA-RevF.pdf

    AJAX与jQuery: - AJAX(Asynchronous JavaScript and XML)是一种用于创建快速动态网页的技术。 - 通过AJAX,可以在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页内容。 - jQuery对AJAX操作提供了...

    dwz-ria-1.4.1

    DWZ富客户端框架(jQuery RIA framework), 是中国人自己开发的基于jQuery实现的Ajax RIA开源框架. 设计目标是简单实用,快速开发,降低ajax开发成本。 欢迎大家提出建议,我们将在下一版本中进一步调整和完善功能....

    ria-back-end

    ria-back-end是一个与前端交互密切相关的后端项目,主要使用了TypeScript作为开发语言。TypeScript是JavaScript的一个超集,提供了静态类型系统、接口、泛型等特性,旨在提高代码的可维护性和开发效率,尤其在大型...

    DWZ-RIA-1.2Final

    DWZ-RIA-1.2Final的出现,对于推动国内Web开发的标准化和规范化具有积极意义,它降低了前端开发的门槛,提升了开发效率,同时也促进了前端技术在国内的普及和发展。对于希望快速搭建高效Web应用的开发者来说,DWZ是...

    DWZ富客户端框架dwz-ria-1.4.6

    这款框架集成了多种技术,旨在简化开发过程,让开发者无需深入理解AJAX和jQuery等复杂技术,也能快速构建出与专业级应用相媲美的前端界面。 DWZ框架的核心理念是“Rich Internet Application”(RIA),它通过增强...

    人工智人-家居设计-RIA技术与智能文档接口研究及应用.pdf

    总的来说,本文探讨了如何将RIA技术与智能文档接口相结合,应用于家居设计领域,通过构建基于MVC的分层模型,实现高效、灵活的数据交换和交互,提升家居设计的数字化水平。这一研究对于推动家居设计行业的技术创新和...

    ajax webshop3视频教程

    2005年以来,Web开发新模式----RIA(Rich Internet Application)的热潮和明星----AJAX, 以优秀的用户体验及全新的开发模型,已经成为Web开发领域的流行技术。AJAX做为种新兴的流行开发技术,广大开发者和开发商迫切...

Global site tag (gtag.js) - Google Analytics