- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Ajax网络聊天室的设计与实现
文献综述
前言部分
信息化的迅猛发展使人们生活方式发生深刻变革。人们之间的对话不再是局限在面对面的方式,网络聊天室提供交流信息的另一种场所。传统的聊天室为了实时显示用户在线情况和用户发送的消息,需要定时刷新页面。页面刷新不仅要占用一定的系统资源和网络带宽,而且出现“白屏”现象,对良好的用户体验很不利。Ajax是Web应用的一种新方法,利用Ajax技术开发的聊天室系统不仅解决了页面刷新带来的白屏问题,而且能降低服务器和网络传输负荷。
随着互联网应用的普及,web应用以其良好的扩展性、易于部署、维护方便等优点逐渐成为软件开发的主流。早期的Web应用采用的是同步交互过程,即用户首先向Web服务器提交一个请求或行为呼叫,服务器接收到客户请求后执行相应处理操作,最后向用户返回处理结果.服务器在处理请求时,用户处于等待状态,有时如果超过了服务器响应时间,甚至返回“页面不可用”等提示。另外,当我们只想改变页面的部分数据时,用户的请求会导致服务器重新返回整个页面内容,包括那些没有改变的数据,这不但增加了网络传输的数据量,还影响了客户端的响应速度,为什么我们不能“按需”获取数据呢?Ajax技术可以很好的解决上述web应用中存在的问题。Ajax技术是Web2.0的核心之一,本质上是一种RIA(RichIllternet Application)技术。RIA是指具有高度互动性和丰富用户体验的网络应用程序,它既具有消息确认、无刷新页面之下提供快捷的界面响应、拖放式等桌面应用程序的特点,同时又具有部署简单、跨平台等Web应用程序的特点。Ajax技术提供了客户端与服务器异步通信的能力,从而使用户从请求一响应一再请求的循环中解脱出来,同时降低了网络传输的数据量,提高了客户端的响应速度,改善了用户使用体验,使得web应用可以接近甚至达到类似“桌面应用”的效果。
正因为Ajax有上述优势,目前Google Suggest、 Gmail、 Google Maps、 A9、Yahoo!News, Sina Blog……都在应用着Ajax技术。不知不觉中, Ajax应用已经遍布网络的每个角落。纵观所有应用, “ 更好的用户体验”是其的共同目标,在浏览器中实现桌面用户界面体验是Web开发的一种趋势。从 Google 到 IBM、 Oracle、 Yahoo! 、 BEA、RedHat、 Novell 等, Ajax技术获得了业界众多 IT巨头的支持,其快速发展是值得期待。技术创新和标准化是 Ajax技术发展的必由之路,W3C已组建相关工作组,专门从事相关的规范开发工作。显然, Ajax技术并不是适合所有 Web 开发的技术。
二、国内外研究的主要成果
因为Ajax技术的精髓是用异步交互替代了传统的同步交互,所以当用户操作时间大于服务器响应时间的时候,使用Ajax的效果非常明显。而当程序性能的瓶颈在于服务器响应时间的时候,Ajax无法解决程序运行缓慢的问题。因此,Ajax更适合应用在交互频繁的轻量级Web 上。在应用Ajax 开发方面,Google 公司成功地将Ajax技术应用到它们的商业产品中。Google Map和Google Suggest 都应用了这项技术。当用户在使用Google Map 浏览地图时(这里所说的浏览包括地图的放大缩小,以及地图的平移),并没有向服务器提交什么请求,就可以浏览到地图各个部分的内容。在这里,正是应用了Ajax技术,使得地图并不是以刷新的方式显示,而是每次都在原有数据的基础上以增量方式显示。这样,用户感觉就好像是在自己的计算机上查看本地的地图一样。微软也在积极开发Ajax应用:它将Ajax技术应用到MSN Space上面。当用户使用MSN Space提交回复评论时,浏览器会暂时停顿一下,然后在无刷新的情况下把用户提交的评论显示出来,这个就是应用了Ajax 的效果。目前,Ajax应用最普遍的领域是GIS-Map方面。GIS的区域搜索强调快速响应,Ajax 的特点正好符合这种要求。在应用Ajax技术开发过程当中,处于核心位置的Ajax引擎实际上是一些复杂的JavaScript程序。 随着网络应用和界面表现的复杂化,使用面向过程的JavaScript 语言描述表现逻辑将会变得很困难。同时, JavaScript的兼容性和调试都会成为使用Ajax技术的一个障碍。为了解决这些问题,开发人员已经开发出了一些基于Ajax技术的框架,方便了开发人员使用,有利于Ajax 技术的进一步推广。当然,任何技术都是有局限性的,Ajax也不例外。Ajax更新页面无需刷新重载,这也使传统的一些用户交互行为变得不可用,如后退、前进和刷新等。另外,移动设备(如手机、PDA等)现在还不能很好的支持Ajax,Ajax 对流
文档评论(0)