首页 > 范文大全 > 正文

AJAX的标准与规范

开篇:润墨网以专业的文秘视角,为您筛选了一篇AJAX的标准与规范范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

自从ajax概念确立,其相应产品便纷纷涌现,但大多数都只是基础框架和工具包,并且只能够支持某一种开发语言,例如:PHP有SAJAX、AJASON,Java有DWR,.NET的AJAX PRO,客户端的类库有Dojo、ADL、Bindows等等。面对这一系列分属服务端、客户端以及不同语言的框架和类库,开发者无所适从,更不知道如何集成融合使用。

AJAX标准规范的欠缺直接导致了技术发展上的混乱,不同技术体系和开发语言使得整合变得更加困难。标准的缺失在很大程度限制和影响了应用开发及AJAX技术自身的发展。

回顾技术发展的历程,我们发现良好的标准往往能够推动技术更快更好地发展,而缺乏规范,往往造成技术停滞不前或者终端市场的巨大损失。AJAX技术做为一种新的应用开发模式,由于是多种技术手段的融合,因此从一开始就缺乏标准化组织的规范。这直接导致在它出现两年后,虽然百家争鸣,却始终无法取得快速的、大规模的应用和普遍的成功,并且往往给使用者带来了巨大的困扰。

现在的局面可以这样说,如果AJAX再不建立全面的规范和标准,并在此基础上逐渐形成统一的架构、框架,那么AJAX很可能会逐渐变成一种噱头并成为过渡性的技术,一旦新的互联网技术标准得到大幅的改善和重要厂商的支持,那么AJAX技术将面临被迅速淘汰的处境,现有基于AJAX的系统生命周期也将大幅缩短,而相应的投入也将遭受损失。

全新的Web操作环境

首先我们要提出Web操作环境这个概念,Web操作环境是指用户使用的环境以及交互的模式。AJAX的出现直接改变了传统Web的用户体验和交互模式,这就迫切地需要建立新的交互操作模式标准。

类似Windows操作模式,比如桌面模式、功能程序的启动、开始菜单、托盘、任务管理、右键、快捷键、多选、拖拉操作等等。这些新的操作模式是以往的传统网站所没有的,因此我们首先应建立一套能够让大多数用户保持习惯并简单易用的规范交互环境。

另一方面,Web操作环境应当以开放式的结构提供完整的应用开发接口(API), 这些API涉及系统内核、注册表、进程管理、系统元件管理、用户管理、用户配置环境(例如:主题、语言区域、托盘管理、内存管理、软件安装集成、基础界面元件等)。

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

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

AJAX应用程序的实现

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

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

AJAX应用程序的主文件通常是一个javascript文件,后缀名为.js,在这个文件中定义有此应用程序的MainClass,并有相应的程序入口方法。AJAX应用程序都具有一个MainClass,MainClass有统一的入口方法Main,Main方法具有由网络式操作系统传来的数组类型参数。应用程序入口参数可以作为多个应用程序间互相调用传递参数的方法之一。

AJAX应用程序应当有统一的进程接口,在我们的实践中通常继承于js.lang.Process类。应用程序的入口方法中应当调用Register方法向网络式操作系统注册,从而将应用进程实例加入到网络式操作系统的列表中。一般来说,运行具有界面的AJAX应用程序将有一个MainWindow属性,指向一个窗体对象的引用,一般来说,MainWindow将在Main方法中创建并显示。

另外,AJAX应用能够被网络式操作系统调用运行,除了以javascript调用的方式外,网络式操作系统还支持文件执行启动AJAX应用,而这就需要定义AJAX应用描述文件,称为快捷运行方式定义。网络式操作系统的Shell能够在.js文件打开时识别对应的快捷运行方式,并根据快捷运行方式定义的主类及参数来启动AJAX应用。

AJAX类库标准

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

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

AJAX的发展任重道远

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

以上阐述仅仅是提出了AJAX技术相关几个方面的初步标准框架,对于AJAX及AJAX应用这样的庞大体系是远远不够的,我们在实际的AJAX可视化开发工具及AJAX在线操作系统、AJAX在线软件的研制过程中,需要不断地总结完善,与实践互相印证,并充分重视标准对于一个领域和一系列产品发展的重要性和决定性,相信越来越多的组织和公司将投入AJAX相关标准和规范的研究和起草,为AJAX技术的长远发展奠定基础。