Ajax(Asynchronous JavaScript + XML)并不是一个革命性的崭新概念(也许根本就不存在突发的革命),它的技术基础在多年之前就已经牢固的建立起来了,在概念层次上的探讨也早就不是一个新鲜的话题,只是大规模的有深度的应用似乎是最近才开始的。 从广义上说,web应用至少涉及到两个结构, 1. 后台以java语言表达的业务逻辑结构 2。前台以html语言表达的界面表现结构。 web开发很大一部分工作就是建立这两个结构之间的关系。即我们需要 我们首先要意识到这两种结构之间并不一定是同构的,即后台数据的组织方式与前台展现时的结构是不同的。同样的数据可以对应于不同的展现结构。这也是所谓MVC架构实现模型与视图分离的依据。传统上,基于Model2模式的MVC框架中,这两种结构的映射只能在很粗的粒度上进行(即整个页面的粒度上),因此妨碍了封装和重用。为了进行细粒度的映射,我们必须要拥有细粒度的结构控制能力。而目前最强的结构控制能力存在于javascript/DHTML模型之中,在js中html的结构可以是一段线性的文本(innerHTML和outerHTML), 可以是层级组织的节点(parentNode, childNodes), 也可以是按照key组织起来的Map(getElementById)。在不同的情形下,我们可以根据需要选择不同的结构模型。 |
|