`
lgx522
  • 浏览: 125858 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

看好Ajax+WebService

    博客分类:
  • Ajax
阅读更多
最近“退步”了,在用PHP,看过“Ajax和PHP开发Web”之后,又接触了些Ajax库,尤其是YUI-Ext给我的印象很深。照此发展下去,本人预感Ajax将是C/S vs B/S这场战争的最终胜者。

Ajax虽然暂时用起来比较繁,但开放性好,对客户端要求低。当Ajax残酷的类库大战硝烟散尽之后,必有一王者成为客户端的统治者。即使从目前来看,Ajax中比较成熟的部分,也已经成为各网站的首选。而Ajax在企业内部的应用,也只待东风了(易用性和IDE)。

原先嫌Ajax繁,一直不理会。投了半年左右的精力在RCP上,作了一些Eclipse RCP、NetBeans Platform及WinForm SmartClient的实践。始终都不太满意,以致于怀念起VB、Delphi + COM。这才深刻体会到Ajax的两个最重要的优势,于是开始学习Ajax。
客户端技术发展到今天,功能大同小异,各有千秋。突破这种各自为政的混乱局面,是这些年技术大爆炸的根本原因之一。要想一统江湖,最终靠的是标准。
想当年Windows平台下应用程序开发无比繁荣,靠的正是Win32API。Win32API之所以成功,源于在Windows平台下的强制标准化,本身的高性能以及一定程度上的易用性。
而后的网络泡沫时代,亦高度繁荣,也正是源于HTML的标准化、高性能和易用性。
之后进入了Java和.NET的虚拟机时代,这一时代在服务层取得了重大突破,但表示层却始终尴尬。原因正是在于标准不统一、性能低下和易用性不高。由于不成熟的表示层技术不断引入,导致混乱局面不断升级。
而如今,Ajax日益流行和成熟,我们也许有机会结束这个混乱时代了。

之所以看好Ajax,正是因为它满足了两大要求:标准化和高性能。Ajax中涉及的JavaScript、XMLHttpRequest等技术,不论如何已经成为Web应用中不可或缺的角色,而各类型的浏览器都提供了支持,虽然有一些小的差异,但大方向上容易形成标准。Ajax对客户端的要求最低,既可以在高性能机器上提供大而全的支持,也可以在老掉牙机器上提供小而精的支持。以前Applet在JRE无预装之后即告退化,足可以说明其重要性。
与Flex和WPF不同的是,Ajax是完全开放的。也就是说大家都可以按照他的要求形成自己的体系和利益群。过去的Java和.NET已经足够大而全了,可惜人们还是要二选一,时至今日都难以抉择,令人惋惜。
至于易用性这一点,目前的Flex和WPF虽然暂时领先,但Ajax只要类库竞争尘埃落定之后,决非难事。过去的Struts即可为证。

顺便谈一下服务器端吧。WebService目前虽难用,但标准化是满足了,足以形成服务层的标准。现在的问题是:是采用官方版的标准SOAP,还是采用民间版的简化REST。这可能要依系统的规模和复杂度而定。不过这下我们身在服务端编程各个阵营的同道们大可放心了。不论是Java、.NET、PHP还是Ruby,只要采用WebService就可以实现互通互连,思路上总算是功德圆满了。实践中却还要解决性能和易用性的问题,虽然WebService达不到专用协议(如RMI)的效率,但为了异构系统集成和长远的扩展性,这点牺牲还是值得。我们要做的就是如何在自己的平台上把WebService用好,尽最大努力解决性能和易用性问题。

这几个月总见dlee等人宣扬REST+Ajax,先也不以为然。待笔者重走长征路后,才大体上得到了类似的结论。虽然晚了些,却是笔者的真实经验与感悟,在此与诸位共勉。

本人今日之愚见且认为:Ajax+WebService(或者说REST)最有可能成为表示层与服务层的最终标准。
分享到:
评论
2 楼 hexiaodong 2007-07-11  
不知道consumer jre会怎么样,如果及时出来,应该能在客户端占领一定份额。
它至少有这么些优势:
1、不用考虑跨浏览器
2、执行效率高
3、容易开发ide
4、基于ide和consumer jre下的控件开发应用界面将比ajax开发要简
5、控件授权容易控制,控件市场容易繁荣起来

1 楼 dlee 2007-07-10  
O'Reilly的这本 RESTful Web Services,已经由博文视点引进,估计明年2、3月间就会出版。明年RESTful Web Services在国内肯定会大热起来的,算是我的一个预言,大家到明年看看准不准。

相关推荐

    ajax+webservice跨域实现文件上传

    【Ajax+WebService跨域实现文件上传】是一种在Web应用程序中常用的技术组合,它允许前端页面通过Ajax异步地与远程Web服务进行通信,同时解决跨域限制,实现文件的上传功能。这一技术主要涉及到以下几个核心知识点: ...

    ajax+WebService应用实例

    在IT行业中,Ajax(Asynchronous JavaScript and XML)与WebService是两个重要的技术概念,它们在构建现代Web应用程序中发挥着至关重要的作用。这个“ajax+WebService应用实例”旨在帮助开发者理解和掌握如何将这两...

    js+webservice 样例

    js+webservice 样例js+webservice 样例js+webservice 样例js+webservice 样例js+webservice 样例js+webservice 样例js+webservice 样例js+webservice 样例js+webservice 样例js+webservice 样例js+webservice 样例

    C++课设:基于QT+webservice的天气查询系统.zip

    1、该资源内项目代码经过严格调试,下载即用确保可以运行! 2、该资源适合计算机相关专业(如计科、人工智能、大数据、数学、电子信息等)正在做课程设计、期末大作业和毕设...C++课设:基于QT+webservice的天气查询系统.

    ajax+webservice

    **Ajax与WebService技术详解** Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。这种技术的出现极大地提升了用户体验,因为它允许页面在后台与服务器进行...

    Struts+Spring+Hibernate+WebService集成架构

    Struts、Spring、Hibernate以及WebService是Java开发中常用的四大框架,它们在企业级应用开发中发挥着关键作用。本文将详细介绍这四大框架的集成架构及其核心功能。 **Struts** Struts是一个开源的MVC(Model-View-...

    Flex+WebService附件上传下载

    在IT领域,Flex和WebService是两个重要的技术概念,它们经常被用于构建富互联网应用程序(RIA)。本教程将探讨如何利用Flex作为前端客户端,通过WebService进行附件的上传和下载操作。 Flex是一款由Adobe开发的开源...

    eclipse+tomcat+axis+webservice详尽教程(含初高级用法).pdf

    axis+webservice详尽教程(含初高级用法).pdfaxis+webservice详尽教程(含初高级用法).pdfaxis+webservice详尽教程(含初高级用法).pdf

    pb11+webservice开发分布式三层应用 例程

    在本例程中,我们将深入探讨如何利用PB11结合Web服务(Webservice)技术来构建一个分布式三层应用。 **1. 分布式系统与三层架构** 分布式系统是多个独立计算机通过网络互相协作,共同完成一项任务。三层架构是一种...

    pb11+webservice

    ### pb11+webservice开发分布式三层应用:深入解析与实践 #### 一、概述 在现代企业级软件开发中,分布式系统设计已成为主流趋势,其中PowerBuilder(PB)结合Web Service技术构建分布式三层架构应用尤为突出。PB...

    Spring+SpringMVC+MyBatis+Maven+CXF+WebService之Web项目整合

    蛮简陋的一个项目,适合新手使用。 这是一个包含简单登录和查询的Web项目,内附有一个表sql文件和两个java项目。...WS_Client是客户端,是一个project项目,内部有一个WebService的测试类,用来测试从服务端取得数据

    pb11+webservice开发分布式三层应用

    本教程“pb11+webservice开发分布式三层应用”着重讲解如何利用PowerBuilder 11和Webservice来构建分布式三层架构的应用程序。三层架构通常包括表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)和...

    axis+webservice教程+帮助文档

    axis+webservice教程+帮助文档

    XSLT+CSS+JQuery+WebService实现网站

    XSLT+CSS+JQuery+WebService实现网站 分离到底!用XML+XSLT+CSS+JQuery+WebService组建Asp.Net网站,数据库采用的是Access(在App_Data下) 使用这种方案建站的人依然寥寥无几,大家还都在抱着Web标准化不撒手,其实...

    spring + struts2 + webService

    自己写的一个测试项目,虽然简单,也完善地使用 spring + struts2 + webService 开发的一个简单的webService 刚入门的朋友 可以略微拿来看下 数据库未附送...mysql写的 表和字段都非常简单 用的话 可以自己完善下...

    AjaxToolkit+WebService+XML三级联动

    本项目“AjaxToolkit+WebService+XML三级联动”利用了AJAX、ASP.NET的AjaxToolkit、WebService以及XML数据格式来构建这样一个功能。下面将详细介绍这些技术及其在项目中的应用。 首先,AJAX(Asynchronous ...

    xampp+cakephp2+webservice+j-ui

    【标题】"XAMPP+CakePHP2+Webservice+j-UI"是一个关于构建Web应用程序的集成环境,其中包含了多种技术的结合。XAMPP是一个流行的开源开发平台,包括Apache服务器、MySQL数据库、PHP和Perl语言,用于快速搭建本地开发...

    PB12.5+webservice实例

    在本实例中,我们将深入探讨如何结合PB12.5与Web服务(特别是通过WebService)进行集成开发。 一、PowerBuilder 12.5简介 PowerBuilder是一种第四代编程语言(4GL),它提供了图形用户界面(GUI)和数据窗口组件,...

    EF+MVC+WebService增删改查

    "EF+MVC+WebService增删改查"是一个典型的示例,它整合了三种关键的技术:Entity Framework(EF)、ASP.NET MVC和Web Service。接下来,我们将详细探讨这些技术以及它们如何协同工作。 1. Entity Framework (EF): ...

Global site tag (gtag.js) - Google Analytics