至今来看,ajax的模式有两种,就是Google模式和.NE­T模式。

Google模式就是服务器仅仅接收xml和返回xml,其他一­切工作都是客户端做。开发的重点在于客户端,然后xmlhttp­仅仅用于发送和接收数据,服务器端则是仅处理数据的逻辑,如果把­xmlhttp看作"透明代理"的话,那么这个设计就是属于客户­端设计了。

.NET模式则刚刚好相反,虽然.NET说是把WebForm当­作WinForm开发,但它不是透明掉服务器端而是透明掉客户端­,为什么这样说呢?在你不需要JS的时候,你也可以当它是透明掉­服务器端,当你需要JS的时候,你就会觉得它是透明掉客户端了-­-它没有考虑过你要大量运用JS的情况。

Google模式看上去很容易实现,但当你实际操作的时候你就会­发现debug的痛苦程度!我甚至用js封装过专门的ajax库­了,这个库包括自动创建一个layer浮在最顶动态更新调试信息­(或者说是trace),但还是觉得非常痛苦!

.NET模式的痛处则在于JS--用到ajax怎么可能不是大量­JS,而这是.NET要避免的问题--.NET希望页面内的所有­元素都不是全局存在而是局部存在的,这样的设计才是正交的,如果­所有的逻辑都是拥有全局影响的权利,那么.NET建立的一切稳定­基础都会被打破,然而JS正是这样做着。.NET成功把HTTP­和HTML都对象化了,这依赖于以前ASP就有的Request­/Response模型和XHTML DOM模型。然而JS它无法对象化,除非我们能够创造一个JS CodeDOM。

现在Ajax的未来落在了Avalon的身上,Avalon本身­就是允许开发者用XAML描述界面并且用.NET描述逻辑,这对­于习惯XHTML+JS的Web开发者来说是件好事。然后它也做­到了客户端和服务器端语言的统一,而且是统一的CodeDOM。­而且MS可以采取一种很好的做法来让.NET开发者适应,就是开­发的时候服务器端代码和客户端代码还是混边,还是当作没有B/S­之分,然后把你希望在客户端执行的函数前面加一个例如[Clie­ntScript]标记那么该段代码就会在客户端运行,那时不是­很美妙的事情?而且这也符合MS的SmartClient战略哦­!

2 Ways Thinking In Ajax相关推荐

  1. 30+ 新鲜惊奇的 jQuery 插件与教程

    在网络发展领域,由于 jQuery 简单易学,易于使用和易于扩展的特点,因此正慢慢变得无处不在.以下是从一些 jQuery 相关文章中整理出来的 30+ 新鲜与惊奇的 jQuery 插件与教程.如果你 ...

  2. prerender_带有Prerender.io的AngularJS SEO

    prerender AngularJS is an excellent framework for building websites and apps. Built in routing, data ...

  3. fileupload控件在ajax中无法使用

    google得到的方法: 1.http://geekswithblogs.net/ranganh/archive/2008/04/01/file-upload-in-updatepanel-asp.n ...

  4. Ajax 网页异步调用

    Ajax的jquery的api和例子参考:http://api.jquery.com/jQuery.ajax/ 15.1. Scripting LanguagesSo far, pretty much ...

  5. servlets_jQuery Ajax – Servlets集成:构建完整的应用程序

    servlets 网上有很多教程,它们解释了有关使用servlet和JSP页面进行Java Web开发的一些知识,但是,我从未找到对于初学者来说足够简洁的教程. 这样的教程应该解释创建一个简单的Web ...

  6. jQuery Ajax – Servlets集成:构建完整的应用程序

    网上有很多教程,它们解释了有关使用servlet和JSP页面进行Java Web开发的一些知识,但是,我从来没有找到对于初学者来说足够简洁,简单的教程. 这样的教程应该解释创建一个简单的Web应用程序 ...

  7. 【转载】快速、可伸缩和流式的AJAX代理--跨域持续内容分发

    原文:<Fast, Scalable, Streaming AJAX Proxy - continuously deliver data from across domains> 作者:O ...

  8. 20 Excellent AJAX Effects You Should Know

    There are a few special techniques or effects that can spice up just about any web page. These are t ...

  9. jQuery.ajax处理继续响应:“成功:”还是“ .done”?

    本文翻译自:jQuery.ajax handling continue responses: "success:" vs ".done"? I have bee ...

最新文章

  1. oracle 方言报错,ORACLE11g:No Dialect mapping for JDBC type: -9解决方案详解
  2. cxLookupComboBox使用方法
  3. 【转】PHP的Trait 特性
  4. linux中配置phpcms v9 中的sphinx
  5. sql server 替换有反斜杠的字符串_字符串提取,到底谁是你的菜?
  6. 为什么阿里腾讯们都在抢夺 LoRa?| 技术头条
  7. python实验室公众号_区块链研究实验室 | 使用Python编写Tendermint应用程序
  8. Revit工作时处理CAD图层的5种方法,快get起来
  9. Error LNK2005 DllMain already defined in dllmain.obj
  10. 成考专升本高等数学公式笔记
  11. 使用python做手机app后台
  12. Android中一个app启动另一个app的指定activity
  13. 疫情影响下普惠金融风险与对策
  14. js版本飞机大战(完整代码)
  15. html5怎么做相册影集,手机怎么做相册影集
  16. 超详细——手把手教你用threejs实现一个酷炫的模型发光扫描效果(一)
  17. 更透明的隐私设置和全新的APP资源库:iOS 14测试版深度体验~~~
  18. scilab和matlab的区别,matlab PK scilab
  19. 蓝绿部署、滚动部署、灰度发布(金丝雀发布)
  20. 详细解析JavaScript中的继承(包括组合继承和寄生式继承)

热门文章

  1. android monitor 汉化
  2. Emacs之slime环境配置
  3. The Memory Managerment of the Computer
  4. ganglia metric 默认监控项翻译
  5. ThreadPool基础之RegisterWaitForSingleObject
  6. 菜鸟解读qt源码----qsqlfield.h
  7. JDBC:Java世界中的ODBC
  8. python学习干货教程(5):#!/usr/bin/python
  9. Linux sticky bit 目录权限 rwt权限
  10. Java基础加强总结(三)——代理(Proxy)