AJAX演义

来源:互联网 发布:软件 竞业 编辑:程序博客网 时间:2024/05/01 04:12

明显的,AJAX来了。我不同意《AJAX七宗罪》,因为确实像《网友热评“AJAX七宗罪”:欲加之罪何患无辞》中说的那样,七宗罪里面没有几个不是无中生有,无事生非的。

我来说说AJAX吧。2001年,当公司争论到底继续使用两层结构还是转到web应用时,我灵感凸现,说了一句,应用从瘦客户端发展到胖客户端又到瘦客户端,这是规律。这就意味着,我的观点意味着应用还会发展到胖客户端。我终于等到了这一天,AJAX,你这只小绵羊终于慢慢踱过来了!

我们来看看应用发展的历史吧。太过古老的我们就不说了,被市场唾弃的C/S两层结构有什么错呢?!计算速度快、安全性高,成熟的开发工具支持高效率的开发。后来开发多了才感觉到,C/S两层结构开放性不够、部署困难、业务逻辑和界面逻辑混杂。

后来我们开发了分布式应用。分布式应用采用胖客户端(窗口),中间层使用组件事务服务器,后端有数据库。感觉很好,第一次有所谓“架构”的感觉。分开的业务逻辑和界面逻辑能很好配合,强大的组件功能提供了两层计算方式无可比拟的优越性。然而分布式开发有分布式开发的难处。首先就在其技术壁垒上,分布式技术没有那么简单,大型团队开发要求水平高。而且分布式应用需要组件事务服务器的支持,大多数服务器都收费,这就阻止了市场的发展。

web应用呢?从刚开始的web应用来看,它集中了胖客户端应用和分布式应用的缺点:计算速度慢、不安全、业务逻辑和界面逻辑依然有很多混杂的地方。初期的web应用大部分都不合格。自从学习了框架和模式后,我们开始应用MVC模式进行开发。web应用被人接受了。现在的web应用大部分都是比较瘦的客户端的。也就是说只有少量客户端动态代码(JavaScript)。模式加上去以后,我们发现业务逻辑和显示界面分开了,同时也能使用组件,大大增强了这种架构的威力,将其原来的一些劣势逐渐掩盖。反而,架构啊、模式啊成了业界很推崇的内容,极大推动了行业的发展。

但我本人觉得现在有几大危险因素:

1、过分依赖XML。无论谈到什么,你都能听到XML。不是说XML不好,而是在架构越来越复杂的今天,一个应用下的XML也会越来越多,各个厂商的标准也不竟相同。一方面会影响web应用的可移植性,另外还会增加开发的复杂度。XML文件之间的配合也是值得研究的事情。

2、过度使用架构。现在的应用,J2EE一侧的,大部分都采用Struts架构,在Struts架构上进一步升华,加入Hibernate及其他。真的需要那么多么?有那么多应用真得那么复杂么?有人从性能的角度考虑过问题么?我原来一个同事说,这些架构加上去软件就真的灵活了,真的?恐怕很多都仅只是修改代码的时候找代码方便了吧!真正灵活的应用往往自己写框架,而不羁绊于像Hibernate那样功能尚不能完整支持的框架!现在还要再客户端上再加一个AJAX,很有意思。

还有几点,多了不想说了,快下班了。

我的观点是,现在应用的水平太低,才真正有那么多人想把很多乱七八糟的东西加进去,这恰巧证明了应用的无所适从。AJAX的出现,更加扰乱了这种局面。智者当然无所谓了,好东西就会有好的用武之地(Oracle, SAP...)。在现在的情况下,JavaScript似乎难以承担此等重任;AJAX引擎还是基于HTTP Request之上,有的关键问题尚不能完全靠它来解决。重新回到胖客户端是否能被市场认可?成熟的应用尚需时日,需要有人出来主持大局,统一标准,发展标准。

原创粉丝点击