标题：Ajax高级程序设计
书籍简介
作者:扎卡斯 姆克皮克 福西特
译者:徐锋 等 
市场价：￥49.00
出版社：人民邮电出版社
页码：363 页码
出版日：2006年
ISBN：9787115148674
版次：2006年6月第1版
装帧：平装
开本：16开
作者简介
Nicholas C.Zakas是Merrimack大学的计算机科学学士、Endicott大学的MBA。它是《Professinal JavaScript for Web Developer》和许多在线文章的作者。Nicholas拥有超过5年的Web开发经验，并为世界上许多大型公司的Web解决方案开发提供了帮助。 
Jeremy McPeak在1998年就以业余爱好的方式投身于Web开发中。现在供职于一个学区的IT部门，Jeremy拥有使用JavaScript、PHP和C#开发Web解决方案的经验。他写了许多涉及XSLT、WebForms和C#的文章。 
Joe Fawcett从1970年就开始了编程生涯，从学校毕业后在IT领域工作的时间很短。在1994年回到软件开发行业之前，经历了许多不同的工作。在2003年，他获得了微软颁发的XML领域的MVP（最有价值专家，一般是从社区贡献和技术能力两方面评价）奖项。Joe现在在伦敦工作，是一个提供职业认证和业务培训等服务的金融培训公司的开发人员。
书评
译者序
在笔者翻译《Ajax修炼之道》接近尾声时，dlee（《Ajax实战》的译者）向我推荐了这本Professional Ajax。在《Ajax修炼之道》一书的翻译过程中，我深切地感受到“程序员修炼之道”系列书籍一贯的写作风格，语言简洁、明快，知识系统、完整，通过深入浅出的语言很容易就可以让一个初学者完成Ajax内功心法的修炼。
但作为一本仅有300页左右的薄书，《Ajax修炼之道》不可能包括更多的实现细节，因此要想进一步地在实战中提高自己的技艺，还需要一些“武功招式”，否则仅有深厚的内力也不足以“临场杀敌”。稍加翻阅Professional Ajax一书之后，我就确定这正是一本讲述“武功招式”的好书，因此就决定趁势继续开始本书的翻译。
在本书的前2章中，以简洁、明快的风格阐述了Ajax的演化历史和技术前身，以及Ajax最基本的使用方法，使得该书自成体系，即便是初学者也能够很快开始自己的Ajax学习历程。第3章则将Ajax的应用场景抽象成为通信控制和失效处理模式，对Ajax针对不同需求的解决方案提供了完整的参考。
接着，在本书的第4~8章中，分别针对XML（包括XPath和XSLT）、RSS/Atom、Web服务、JSON、Web用户界面组件等五个主题，阐述了如何将Ajax和这些技术有效地结合在一起，经典的实例、完整的源代码，都将给读者带来“实战”的指导。在此之后，本书讲述了一个利用Ajax开发的Web Mail系统实例（第9章 AjaxMail），来说明如何通过Ajax及相关技术达到Gmail所实现的用户体验。
最后，本书详细地讲述了JPSpan、DWR和Ajax.NET三种Ajax框架的使用方法，对于PHP、JSP、ASP.NET的Web开人员，都可以找到适合自己的框架。
在本书的翻译过程中，原作者文思流畅、代码完整，这都给笔者留下了深刻的印象，也是笔者翻译的多本书籍中感到最为畅快的一本。如果一定要指出它的缺点，那么可能只有一点，在大部分章节中，文中例子使用的是现在使用率稍低于Java和.NET的PHP。不过，Ajax关注的是前端技术，后台代码的实现并非本书的重点，加上PHP代码的易读性，并不会给读者带来太多的困难。笔者所在的开发团队中，就基于这些例子，简单地修改成了ASP.NET的实现版本，整个过程没有遇到太多的周折。
Ajax作为一项热点技术，近期相关的书籍也层出不穷，作为《Ajax修炼之道》和本书的译者、加上对《Ajax实战》、《Ajax基础教程》的阅读体验，在此与大家分享一下对这四本书籍的看法：
① 如果你想快速地了解Ajax技术，可以选择《Ajax基础教程》和《Ajax修炼之道》；
②如果你想迅速提高自己动手实现Ajax解决方法，建议看《Ajax基础教程》和本书；
③ 如果你想用最短的时间系统化地了解Ajax的方方面面，《Ajax修炼之道》是首选；
④如果你想深入研究Ajax技术，那么《Ajax实战》是不可错过的好书。
最后，在此向图灵公司的傅志红编辑和技术上的好友李锟（dlee）先生表示衷心的感谢，你们的支持和指导是本书顺利完成的基石；感谢长年来一起合作共事的吴兰陟（负责本书第4、6两章的初译）、胡冰和陈绍继，你们为本书的翻译提供了许多帮助。最后还要感谢母亲多年来的教导，以及妻子许高芳一直以来的默默支持与鼓励。
鉴于笔者水平有限，因此在此必须感谢每一位读者，希望能够得到您的反馈与批评，欢迎来信（xf@csai.cn）与我一起交流与Ajax、Web 2.0、B/S软件开发的更多话题。 
徐锋
2006年5月于厦门紫荆园
目录
第1章 什么是Ajax1.1 Ajax的诞生 
1.2 Web的演化过程 
1.2.1 JavaScript 
1.2.2 帧 
1.2.3 隐藏帧技术 
1.2.4 动态HTML和DOM 
1.2.5 iframe 
1.2.6 XMLHttp 
1.3 真正的Ajax 
1.4 Ajax原则 
1.5 Ajax后面的技术 
1.6 谁在使用Ajax？ 
1.6.1 Google Suggest 
1.6.2 Gmail 
1.6.3 Google Maps 
1.6.4 A9 
1.6.5 Yahoo!News 
1.6.6 Bitflux Blog 
1.7 混乱与争议 
1.8 小结第2章 Ajax基础2.1 HTTP基础 
2.1.1 HTTP请求 
2.1.2 HTTP应答 
2.2 Ajax通讯技术 
2.2.1 隐藏帧技术 
2.2.2 XMLHttp请求 
2.3 进一步考虑 
2.3.1 同源策略 
2.3.2 缓存的控制 
2.4 小结第3章 Ajax模式3.1 通信控制模式 
3.1.1 预先获取 
3.1.2 页面预载入的例子 
3.1.3 提交节流 
3.1.4 表单增量验证的实例 
3.1.5 字段增量验证实例 
3.1.6 定期刷新 
3.1.7 新评论提示实例 
3.1.8 多阶段下载 
3.1.9 附加信息链接实例 
3.2 失效处理模式 
3.2.1 取消待处理的请求 
3.2.2 重试 
3.3 小结第4章 XML、Xpath和XSLT4.1 浏览器对XML的支持 
4.1.1 IE中的XML DOM 
4.1.2 Firefox中的XML DOM 
4.1.3 跨浏览器兼容的XML 
4.1.4 基本的XML实例 
4.2 浏览器对Xpath的支持 
4.2.1 XPath概述 
4.2.2 IE中的XPath 
4.2.3 使用命名空间 
4.2.4 Firefox中的XPath 
4.2.5 使用命名空间解析器 
4.2.6 跨浏览器兼容的XPath 
4.3 浏览器对XSLT的支持 
4.3.1 XSLT概述 
4.3.2 IE中的XSLT 
4.3.3 Firefox中的XSLT 
4.3.4 跨浏览器兼容XSLT 
4.3.5 重访“最佳选择” 
4.4 小结第5章 基于RSS/Atom的Syndication5.1 RSS 
5.1.1 RSS 0.91 
5.1.2 RSS 1.0 
5.1.3 RSS 2.0 
5.2 Atom 
5.3 FooReader.NET 
5.3.1 客户端组件 
5.3.2 服务器端组件 
5.3.3 将客户端和服务器连接起来 
5.4 安装 
5.5 测试 
5.6 小结第6章 Web服务6.1 相关技术 
6.1.1 SOAP 
6.1.2 WSDL 
6.1.3 REST 
6.2 .NET连接 
6.3 设计决策 
6.4 创建Windows平台的Web服务 
6.4.1 系统需求 
6.4.2 配置IIS 
6.4.3 编写Web服务 
6.4.4 创建程序集 
6.5 Web服务和Ajax 
6.5.1 创建测试工具 
6.5.2 IE使用的方法 
6.5.3 Mozilla使用的方法 
6.5.4 通用方法 
6.6 跨域的Web服务 
6.6.1 Google Web API 服务 
6.6.2 创建代理 
6.7 小结第7章 JSON7.1 什么是JSON？ 
7.1.1 数组表示 
7.1.2 对象表示 
7.1.3 混合表示 
7.1.4 JSON语法 
7.1.5 JSON编码和解码 
7.2 JSON vs. XML 
7.3 服务端JSON工具 
7.3.1 JSON-PHP 
7.3.2 其它工具 
7.4 创建自动提示的文本框 
7.4.1 功能概述 
7.4.2 HTML部分 
7.4.3 数据库表 
7.4.4 体系结构 
7.4.5 类 
7.4.6 自动建议控件 
7.4.7 建议提供者 
7.4.8 服务器端组件 
7.4.9 客户端组件 
7.5 小结第8章 Web网站的用户界面组件8.1 创建滚动新闻用户界面组件 
8.1.1 服务器端组件 
8.1.2 客户端组件 
8.1.3 对新闻设置样式 
8.1.4 实现滚动新闻用户界面组件 
8.2 创建天气用户界面组件 
8.2.1 Weather.com提供的SDK 
8.2.2 服务器端组件 
8.2.3 客户端组件 
8.2.4 从服务器获取数据 
8.2.5 定制天气用户界面组件 
8.2.6 实现天气用户界面组件 
8.3 创建Web搜索用户界面组件 
8.3.1 服务器端组件 
8.3.2 客户端组件 
8.3.3 定制Web搜索用户界面组件 
8.3.4 实现Web搜索用户界面组件 
8.4 创建网站搜索用户界面组件 
8.4.1 服务器端组件 
8.4.2 客户端组件 
8.4.3 定制网站搜索用户界面组件 
8.4.4 实现网站搜索用户界面组件 
8.5 小结第9章 AjaxMail9.1 需求 
9.2 架构 
9.2.1 将使用的资源 
9.2.2 数据库表 
9.2.3 配置文件 
9.2.4 AjaxMailbox类 
9.2.5 执行操作 
9.3 用户界面 
9.3.1 文件夹视图 
9.3.2 阅读视图 
9.3.3 写邮件视图 
9.3.4 布局 
9.4 整合 
9.4.1 辅助函数 
9.4.2 Mailbox对象 
9.4.3 回调函数 
9.4.4 事件处理函数 
9.5 最后一步 
9.6 小结第10章 Ajax框架10.1 JPSpan 
10.1.1 工作原理 
10.1.2 安装JPSpan 
10.1.3 创建服务端页面 
10.1.4 创建客户端页面 
10.1.5 错误处理 
10.1.6 类型转换 
10.1.7 JPSpan小结 
10.2 DWR 
10.2.1 工作原理 
10.2.2 安装DWR 
10.2.3 创建客户端页面 
10.2.4 使用自定义类 
10.2.5 错误处理 
10.2.6 dwr.xml中的更多配置项 
10.2.7 转换器 
10.2.8 DWR小结 
10.3 Ajax.NET 
10.3.1 工作原理 
10.3.2 安装Ajax.NET 
10.3.3 创建Web页面 
10.3.4 简单类型和复杂类型 
10.3.5 Session状态 
10.3.6 Ajax.NET小结 
10.4 小结