同时不要盲目崇拜ajax,他有好的也有不好的一面,小规模使用是可以提高表现层的客户体验,但是如果拿来做一个非常复杂的业务系统,那就有的苦头吃了,国内这方面具我所知"锐道"比较强,号称胖B/S架构,采用了大量的ajax,结果用他们做出来的业务系统,共同反映很慢,同时对于ie来说这个东西也不稳定,升级是一个很大的问题。
所以只能说各有千秋罢了,不然微软的.net也不要搞什么win form了。呵呵。
听了以上二位的意思我觉得应该是这样用ajax技术。我们可以用但是要建立在一个良好的系统架构上用这个东西,显示一些大家所期望的效果。但不能完全的做成纯ajax系统如果html+js+业务。原因可能有很多。技术、维护、安全、速度。
谈谈ajax实质!
客户端首先从服务器请求页面。服务器返回内嵌 JavaScript 代码的 HTML 页面。然后 JavaScript 代码从服务器请求更多的数据(通常使用 XML)并动态地更新页面。
我们可否在中间做些手脚来均衡一下。客户必然还会请求服务器。服务器返回的页面是由现有的传统框架所生成。(而不是静态的Html+js)然后js代码可以从服务器请求数据(xml格式可实现页面节点动态刷新)跳转页面工作由传统框控制层处理并且搞定权限安全等一些拦截工作。这样是否是当前web的需求那?
是这样,ajax与控制层的关系,在scope粒度上不同的,也是事件模式的不同,事件模式中常有主动触发调用和reaction自我触发两种,控制层是为了应付主动触发调用,进行一些大scope范围内大的主要页面流程跳转;而ajax是一种reaction自我触发为主的模式,通常可用在一个大的主要页面范围内自我激活其他小页面的调用。
从事件模式角度看,主动触发调用和自我触发这两种模式都有应用范围,没有随替代随的问题,具体技术总是服从应用模式的。
当然,ajax也可能发展出响应主动触发调用模式,但是安全性等问题这时就是首要问题,安全验证一定需要服务器端实现,包括控制层Web资源验证,以及业务层的组件构件方法调用验证等。
btw: 当出现一个新技术时,我们在激动之余,就要以模式观点来看待,就不会走极端,泰然处之,也不会有压力紧张感,感觉那么多技术要掌握,知道某个新技术是哪种解决方案,哪种模式,以后在遇到相应场景问题时,再进行具体研究也不迟。
Ajax相当于延长了表现层的范围和触角,丰富表现层框架,我们还是可以将Ajax和JSF或struts/Tapestry结合使用的。
Ajax对于客户端和服务器端的大数据量传递提供了异步处理方式,从而我们可以利用用户在浏览已有数据的空闲时段,悄悄地将下一批数据从服务器端拉到客户端。
在服务器端,事件处理都分同步和异步,那么这种区分也体现在客户端是很自然的结果,提供了展现丰富界面效果的强大技术支持。重视客户端有时可能比重视服务器端更有效,更能说服客户,这是中国实情啊。
AJAX解决了过去困扰我们B/S结构下服务器向客户端“推”的功能,浏览器过去只能从服务器拉信息,我们使用浏览器频繁整个页面全部不断刷新方式来从服务器获得一些可能随机立即发生变化的信息,现在可以不必这么痛苦,委托ajax在后面异步不断地从频繁服务器的侦测。在表面上更好地解决了以“拉”方式实现服务器向客户端“推”的效果。
结果那?
结果无非是一道选择题。
A.多用ajax技术使得客户端有一定的逻辑处理能力。(页面数据都由js请求DOM解析而来)
B.适量用ajax技术结合当前成熟的表现层框架。(页面主要数据由表现层框架得来部分数据可以异步请求后台通过dom解析xml得来)
__>
这样的论断我很难认同,不知道楼主有没有用过dorado5,实不想瞒,我本人就实dorado的工程师,dorado5在运行速度上在页面速据量不大的已经和静态页面相差无几,我们有在线copy2000条数据的例子。
业务逻辑复杂,影响数据恐怕不是展现的问题,更多的是servlet处理慢!
――――――――――――――――
不是做广告就事论事!
锐道的朋友不知你有没有听过common control这套WEB组件,我们公司(德国)现在自己不做表现层组件了,就用的他们的,我看这套组件连你们的1/10都不如,他们估计连ajax为何物都不清楚,连一个表单的排序都要到后台去做,不过就这样的东西,价钱也不低啊,我看你们有兴趣可以去看看这个组件。
> ⒒故切老踩艨窆?
你可以到这篇文章看看
http://61.151.239.187/bbs/forum/viewthread?thread=658
对使用AJAX开发有帮助。
1、满足商业用户的需要,降低成本
2、满足最终消费者的需要,给消费者以最佳体验
富客户端目的是可以满足后一种需要,但在提供一致体验来说,并不是所有的客户端技术都能实现的。
另外,这里所说的胖客户端和富客户端是有区别的,胖客户端是指客户机模式,富客户端是c/s b/s的中和。
欢迎访问我的blog:http://zhang-yafei.spaces.live.com/
After all, we must put our idea into pratice.
Of course, the precondition is that we have enough time. If we have, why not? Banq, could you consider that please?