`

将DHTML与Ajax区分开(zhuan)

阅读更多
JavaEye论坛的Ajax版有几个人具有丰富的DHTML开发经验,我也向他们学到了一些很好的技巧。不过我感觉在那里大多数人的关注点主要还是集中在掌握各种实用的开发框架上。这些开发框架固然很重要,善于使用这些框架有的时候可以取得事半功倍的效果。但是这些开发框架只是Ajax的一部分, Ajax还有更加丰富的内容。这些开发框架解决的问题主要还是属于DHTML开发的问题,我其实一直有意识地将DHTML与Ajax加以区分。DHTML是一门很老的技术,在Goodman所著的Dynamic HTML: The Definitive Reference这本1500页的巨著里几乎描述了在浏览器中使用DHTML所能做的一切事情。国内在高水平的DHTML著作的出版方面一直存在着严重的缺失,所以国内真正的DHTML开发高手凤毛麟角也是毫不奇怪的。Dynamic HTML: The Definitive Reference这本书今年下半年将会由博文视点出版,虽然迟到了很多年,但是可以弥补这个领域长期以来的缺失。Goodman所著的另外一本书JavaScript & DHTML Cookbook(篇幅只有前面一本书的大约1/3),也是非常棒的。我在这里要说的是,不要将DHTML与Ajax等同起来,其实你不知道的关于Ajax的东西还有很多。将DHTML与Ajax等同起来是很多人认为Ajax没有新意(过渡技术云云,貌似只有他本人使用的才是终极武器)的主要原因。对于放言已经知道了Ajax的一切的人,我只能耸耸肩一笑置之。

  Ajax != 会使用Prototype/Scriptaculous/yui-ext/jQuery/Dojo/DWR/GWT/JSI,Ajax其实代表了一种新的Web应用的开发方式。除了学会使用某种顺手的开发框架外,还需要多关注一下Ajax应用的整体架构,以及Ajax应用的客户端与服务器端的关系,它们之间的交互和数据流。Ajax应用支持一些全新的架构设计(例如REST),这些设计在使用基于HTML表单的交互模式的传统的Web应用中是无法做到的。能够代表Ajax本质的一些思想在《Ajax实战》、《Ajax模式与最佳实践》、《Ajax设计模式》这三本书中有着非常深入的介绍。这些属于整体架构的设计模式和最佳实践方面的东西需引起大家的高度关注。一个高度可伸缩的、可用性良好的Web 2.0应用,主要的力量来自于优秀的架构设计。

  Ajax 对于Web开发所带来的冲击可以说与DHTML几乎完全没有关系,DHTML技术在很多年前Goodman的两本书出版时就已经成熟了,但是DHTML并没有给Web开发带来多大的冲击。Ajax所带来的新的思想主要是在架构设计方面的。以前的一些传统的Web应用的架构,包括Web MVC/JSF/ASP.NET等等,它们最初的设计都是围绕着基于HTML表单的交互模式展开的,它们在最初的架构设计中完全没有考虑到 XMLHttpRequest这个技术,更不用提REST了。当然REST也完全不是什么全新的架构,Fielding在他2000年的博士论文中就对 REST的设计思想进行的详细的阐述。但是基于HTML表单的交互模式,是难以做基于REST的架构设计的(一个很大的障碍是表单提交只支持GET和 POST两种方法)。直到Ajax这个技术出现后,基于REST的架构设计才在Web开发领域中获得了它应有的地位。REST这种架构设计除了可以被 Ajax应用之外,也可以被其他的RIA技术所应用。

分享到:
评论
2 楼 afcn0 2007-09-07  
当然异步技术包括xmlhttp iframe script tag,为什么直到google开发出来gmail,以及37signals,以及meebo这样的IM之后,人们才开始重视Ajax呢,也是一个很奇怪的问题,很难说是XMLHttpRequest造就了Ajax
1 楼 afcn0 2007-09-07  
非常同意,Ajax强调的是asynchronous就是异步,就是异步技术,只有异步才能够实现RIA才能够实现无刷,富客户端程序,dwr这种rpc或者说REST和异步才是排挡,DHTML以前之所以没有很多人关系,研究是因为缺乏获取数据能力,最近人们开始认识到他们有异步技术可以开发RIA应用,甚至通过RPC实现非常强大的browser platform上面的应用程序,所以DOM css js以及平台之间的异同才被人们重视起来,还有其实这里面的帖子很少是讲异步的

相关推荐

    一个非常漂亮的基于DHTML+ajax实现的标签导航类库代码

    在标签导航场景中,DHTML可以实现标签的动态显示与隐藏,以及交互效果如滑动、淡入淡出等,提升用户体验。 AJAX 是一种创建动态网页的技术,通过在后台与服务器进行少量数据交换,使网页实现异步更新。在标签导航中...

    基于DHTML+AJAX实现的 Menu类库scripts代码例子

    本篇将深入探讨基于DHTML+AJAX实现的Menu类库scripts代码实例,这一技术主要用于构建动态、交互式的网页菜单系统。DHTML(Dynamic HTML)是一种结合了HTML、CSS、JavaScript以及DOM(Document Object Model)的技术...

    一个非常优秀的基于DHTML+ajax套装类库及大量源码例子程序

    Ajax的核心在于通过JavaScript异步地与服务器进行数据交换,无需刷新整个页面就能更新部分网页内容。这种技术显著提高了用户体验,因为它允许用户在等待新数据加载的同时仍能继续使用网页的其他功能。 **DHTML+Ajax...

    用VC获得webbrowser中的网页代码(包括dhtml及ajax变动后的)

    通过阅读和理解这些代码,你可以更好地理解如何在VC++中与`WebBrowser`控件交互,以及如何捕获和处理DHTML和AJAX页面的动态内容。 总结来说,获取`WebBrowser`控件中的网页代码,特别是处理DHTML和AJAX变动,需要对...

    基于dhtml+ajax实现的漂亮日历calendar源码类库例子

    2. **AJAX**:AJAX的核心在于异步数据交换,它使得网页可以后台与服务器通信,无需用户显式等待页面刷新。在日历应用中,AJAX可能用于获取服务器上的事件数据,或者向服务器发送用户的选择,如添加新的约会。例如,...

    一个基于DHTML+ajax技术实现的news-rotator新闻滚动展示类库代码

    综上所述,"news-rotator"是一个利用DHTML和AJAX技术构建的新闻滚动展示类库,它将前端动态更新和后台数据获取相结合,为用户提供无缝的新闻浏览体验。通过理解其工作原理和文件结构,我们可以对其进行定制和优化,...

    DHTML 手册 DHTML 手册

    **DHTML(Dynamic HTML)手册** DHTML 是 Dynamic HTML 的缩写,是一种技术组合,用于在Web页面上创建动态、交互式...通过深入学习和实践DHTML,开发者能够创建更加丰富、互动的网页应用,提升用户与网页的交互体验。

    DHTML手册 DHTML手册

    此外,JavaScript还可以与服务器进行异步通信(AJAX),在不刷新页面的情况下获取新数据,提升用户体验。 综上所述,DHTML涉及HTML、CSS和JavaScript的综合运用,通过它们的结合,网页可以变得生动活泼,用户交互...

    四天学会ajax_ajax教程.pdf

    【Ajax技术概述】 Ajax,全称为Asynchronous JavaScript and XML,是一种在无需重新加载整个网页的情况下,能够更新...通过这四天的学习,你将能够熟练掌握Ajax,将其应用到前端开发中,提升Web应用的互动性和效率。

    Dhtml手册(Dhtml手册.chm)

    例如,可以使用Ajax技术向服务器请求数据,然后用JavaScript将新数据插入到页面的相应位置。 8. **兼容性问题**:由于DHTML涉及的技术在不同的浏览器中有不同的实现,所以开发者需要考虑跨浏览器兼容性,确保在多种...

    DHtml的详细帮助文档

    6. **DHTML与Ajax** 虽然DHTML主要关注用户界面的动态性,但AJAX技术是实现页面局部更新的关键。AJAX允许在后台与服务器通信,获取数据后更新DOM,实现无刷新页面交互。 7. **DHTML的挑战与兼容性** DHTML的效果...

    css与DHTML布局

    《CSS与DHTML布局》是一本深入探讨网页布局技术的专业书籍,主要涵盖了CSS(层叠样式表)和DHTML(动态超文本标记语言)两大核心主题。这些技术在现代网页设计和开发中扮演着至关重要的角色,使得网页不仅美观,而且...

    Ajax,Jscript,DHTML(北大青鸟内部资料)

    Ajax、JScript和DHTML是Web开发中的三个关键技术,它们共同构建了...随着Web技术的不断发展,Ajax、JScript和DHTML仍然是构建现代Web应用程序的重要工具,不断学习和掌握这些技术,将有助于你在Web开发领域保持竞争力。

    Dhtml帮助文档 (Dhtml帮助文档)

    DHTML技术的发展也为后来的Ajax(Asynchronous JavaScript and XML)和现代前端框架(如React、Vue、Angular)奠定了基础。虽然现代Web开发有更多高级工具和技术,但理解DHTML的基本原理对于前端开发仍然是非常有...

    dhtmlxSuite js组件 ajax组件 dhtml组件

    Ajax(Asynchronous JavaScript and XML)是一种创建动态网页的技术,允许在后台与服务器交换数据并更新部分网页内容,而无需重新加载整个页面。dhtmlxSuite的Ajax组件通过异步通信,实现与服务器的无缝交互,提高...

    最新收集的实用 DHtml 代码例子

    3. **JavaScript编程**:JavaScript是DHtml的核心,提供了与用户交互的能力。通过事件监听(如点击、滚动等)、DOM操作(添加、删除、修改元素)和AJAX(异步JavaScript和XML,用于后台数据交换)等,实现动态效果。...

    Ajax从入门到精通.pdf

    2. Ajax 的核心技术:Book 介绍了 Ajax 的核心技术,包括 HTML、JavaScript、DHTML 和 DOM,详细讲解了这些技术的原理、实现方法和实践应用。 3. XMLHttpRequest 对象:书籍详细介绍了 XMLHttpRequest 对象的概念、...

    DHTML

    随着Web技术的发展,DHTML的概念逐渐被更现代的技术栈如AJAX(异步JavaScript和XML)和SPA(单页应用)所取代,但DHTML作为Web发展历史上的重要里程碑,对现代前端开发仍然具有深远影响。理解和掌握DHTML相关的HTML...

Global site tag (gtag.js) - Google Analytics