标题：Web 2.0应用程序开发实践
图书信息
Web 2.0应用程序开发实践封面(1张)
张岭  主编
ISBN 978-7-121-12309-2
2011年2月出版
定  价：42.00元
16开
272 页
内 容 简 介
Web 2.0代表了新一代的Web用户体验和与之对应的相关技术实现。本书介绍了进行Web 2.0相关软件开发所需要掌握的理论知识、技术和工具，从开发、测试、全球化、性能、安全性等多个重要方面进行了深入的探讨，并提供了丰富的样例程序供参考。本书结合了IBM开发团队的实际产品开发经验，是对Web 2.0软件开发技术领域的一个完整概括。
本书适合于从事Web开发的程序员、项目经理、产品经理，以及对相关领域感兴趣的开发人员学习和阅读。
总 序
去国离家十六载后，2006年，当我再次归来凝视上海这座不夜城时，不由地感慨世界真的变小了、变平了，中国作为地球村的一员，正以惊人的速度发展变化着。
世界正改变着中国，中国也不断影响着世界。在备感欣喜振奋之余，我亦常常思索，在一个越来越小、越来越平的世界里，中国会面对怎样的挑战和机遇？IBM作为全球最大的信息技术和行业解决方案公司，又在哪些方面可以与中国分享我们的先进技术、经验与创新为要的精神呢？
中国自2001年入世以后，很多企业开始迅速发展，创造出了许多新的发展模式。但是，中国、中国的企业在做大做强并开始走向世界的过程中也面临着越来越多的挑战。如何拥有更多更强的创新能力？如何提升中国在全球一体化经济格局中的竞争力？如何增强企业的可持续发展能力并逐渐走向领袖地位？这应该是很多中国企业共同面对并思考的问题。
百年来，创新求变是IBM公司虽历经艰难仍屡铸辉煌的关键。因而，IBM公司虽多次转型，却始终以超前的技术、出色的管理和独树一帜的产品领导着全球信息技术的发展，保证了世界范围内几乎所有行业用户对信息处理的全方位需求。关于创新，我们有很多的经验愿与中国业界分享。
中国开发中心（China Development Lab, 简称CDL）是IBM在中国的窗口，是中国IT产业与世界交流的桥梁。CDL不仅把全球先进技术引入中国，也将中国领先的技术与行业解决方案推向世界。经过十年的蓬勃发展，CDL已经拥有5000名软件开发人员，成为IBM全球规模最大的软件开发基地之一，并成为跨国公司在中国最大的软件开发机构。十年来，一批又一批中国本土的人才，在CDL提供的平台上施展才华，并逐渐成长为技术与管理精英。
我们始终恪守着“中国人才、国际管理；中国创造、服务全球”的理念，希望将IBM的最新技术、创新和管理心得与大家共同分享，并鼓励CDL的专家走出实验室。于是，我们有幸选择了实力非凡、专业创新的电子工业出版社博文视点公司作为合作伙伴，推出这一系列丛书。该丛书的作者包括来自CDL WebSphere、Information Management、Lotus、Rational、Tivoli五大软件产品开发团队，以及来自中国开发中心新兴技术学院（Emerging Technology Institute）、行业解决方案中心（Industry Solution Labs）、软件服务团队（Software Service）等各个部门的优秀架构师、资深工程师、管理者，范围将涵盖从开发理论及平台、方法论及实践、项目管理、最新软件技术与产品、先进行业解决方案架构，到最新技术标准和前沿技术发展趋势甚至创新的商业模式探讨等诸多方面。
我希望这套丛书能把我们一线专家宝贵的经验、我们的见解呈现给读者。在与业界分享经验和世界最新技术及趋势的同时，我们希望能为推动中国IT产业的加速发展奉献微薄之力。IBM中国开发中心将一如既往地同业界同仁一起，共铸中国信息产业的辉煌明天！
王阳 博士
IBM全球副总裁兼中国开发中心总经理
前 言
Web 2.0概念和应用的推广已经有了几年的时间，期间也有不少的文章和书籍介绍Web 2.0的商业价值、用户体验和技术创新。而对Web 2.0软件开发，尤其是覆盖完整产品开发流程的书籍甚少。
本书的特色在于其内容涵盖了整个开发流程并附以众多的最佳实践，除了基础的理论知识和工具外，本书包含了很多在具体开发过程中的经验总结和解决特定问题的最佳方案，这些内容无论是对刚刚开始从事Web开发还是已经具备Web开发经验的软件工程师，都具有很好的指导意义。
本书的作者全部来自IBM中国开发中心Lotus软件开发部门，他们均有多年的产品开发经验，其中绝大多数都是IBM Lotus Connections—— 最具影响的企业Web 2.0产品的开发工程师。除了丰富的产品开发经验外，他们还分别承担了不同的开发角色——开发、测试、性能、安全、全球化等工程师，为本书提供了Web 2.0软件开发的一线经验和最佳实践。
希望本书可以为仍在Web 2.0世界里摸索的软件开发人员，指出正确的道路，充分利用本书的资源，可以真正有效提高您的开发效率和质量！
目 录
第1章  Web 2.0概述 1
1.1  Web 2.0的特点 2
1.2  Web 2.0应用程序举例 3
1.3  本章小结 5
第2章  Web 2.0应用架构 6
2.1  Web界面与用户体验 7
2.2  富客户端网络应用（Rich Internet Application） 9
2.3  可编程性 11
2.3.1  什么是可编程Web 2.0应用 11
2.3.2  技术概要 13
2.4  Web 2.0系统集成案例 14
2.4.1  Amazon AMS 15
2.4.2  淘宝网开放平台 15
2.4.3  IBM Lotus Connections 15
2.5  本章小结 16
第3章  Web 2.0应用程序相关开发技术 17
3.1  Ajax  18
3.1.1  Ajax核心要素——XMLHttpRequest对象 19
3.1.2  Ajax开源工具包概述 28
3.2  Mashup和Widget  29
3.2.1  Mashup概述 29
3.2.2  Widget概述 32
3.3  Feed（Atom/RSS） 36
3.3.1  概述 36
3.3.2  RSS 39
3.3.3  Atom 43
3.3.4  Feed开源工具包简介 45
3.4  本章小结 46
第4章  REST 47
4.1  REST与SOAP  49
4.2  Hello REST  53
4.3  REST设计器原则 55
4.4  REST设计步骤 62
4.5  REST开发框架 67
4.5.1  Restlet 67
4.5.2  Cetie4 67
4.6  开发REST应用程序 68
4.7  本章小结 70
第5章  Web 2.0应用程序开发包 71
5.1  Dojo  72
5.1.1  Dojo 概述 72
5.1.2  安装Dojo 73
5.1.3  Hello World 74
5.1.4  Dojo的模块加载机制 75
5.1.5  Dojo 中的DOM工具函数 76
5.1.6  Dojo中的事件监听机制 79
5.1.7  Dojo中的XMLHttpRequest函数集 79
5.2  JAWR  82
5.2.1  JAWR简介 82
5.2.2  JAWR的使用 83
5.3  Abdera  87
5.3.1  创建Atom文档 87
5.3.2  解析Atom文档 91
5.4  本章小结 92
第6章  构建Web 2.0网站实例 93
6.1  网站主要功能简介 94
6.2  网站开发准备 97
6.3  网站详细说明 100
6.3.1  数据库设计与开发 100
6.3.2  Domain类的开发 103
6.3.3  iBatis DAO的开发 104
6.3.4  Struts的开发 108
6.3.5  JSP页面的开发 113
6.3.6  页面的Ajax的开发 115
6.3.7  部署与运行 119
6.4  本章小结 122
第7章  Web 2.0测试 123
7.1  测试阶段 124
7.2  自动化测试 126
7.2.1  测试流程自动化 126
7.2.2  测试脚本自动化 129
7.3  测试中的工具 132
7.3.1  Firebug 132
7.3.2  IE Developer 137
7.3.3  IE Throttle 138
7.4  本章小结 139
第8章  Web 2.0安全性 140
8.1  跨站脚本 143
8.1.1  跨站脚本实例 143
8.1.2  跨站脚本的危害 144
8.1.3  跨站脚本的类型 146
8.1.4  跨站脚本的防范 149
8.2  跨站请求伪造 156
8.2.1  跨站请求伪造实例 157
8.2.2  跨站请求伪造的危害 159
8.2.3  跨站请求伪造的类型 160
8.2.4  跨站请求伪造的防范 162
8.3  Web 2.0应用的认证与授权的问题 167
8.3.1  OAuth 协议 169
8.4  Web 2.0应用的安全性测试 170
8.5  本章小结 172
第9章  Web 2.0性能 173
9.1  Web 2.0应用性能的特点 174
9.1.1  服务器端的性能特点 174
9.1.2  浏览器端的性能特点 175
9.2  影响Web 2.0应用性能的因素 177
9.2.1  服务器端的影响因素 180
9.2.2  浏览器端的影响因素 187
9.3  Web 2.0 应用性能测试的常用工具 190
9.3.1  Firefox 的性能插件 190
9.3.2  IE的性能插件 190
9.3.3  专用工具 192
9.4  本章小结 196
第10章  Web 2.0全球化 197
10.1  软件产品全球化的需求 198
10.2  全球化的基本技术 199
10.2.1  基本技术 200
10.2.2  Java的国际化支持 201
10.2.3  ICU4J 201
10.2.4  其他框架 202
10.2.5  语言的挑战 202
10.3  全球化软件产品设计与架构 203
10.3.1  好的设计与坏的设计 203
10.3.2  全球化软件开发过程 206
10.4  Web 2.0对全球化带来的新挑战 209
10.4.1  新的需求、新的技术 209
10.4.2  基于客户端的全球化方法与实践 209
10.4.3  Dojo全球化支持简介 212
10.5  Web 2.0全球化常见问题和解决方案 220
10.5.1  过度依赖服务器实现本地化动态页面 221
10.5.2  过度依赖服务器端资源文件 221
10.5.3  字符串拼接 222
10.5.4  Locale ID归一化 223
10.5.5  缓存 223
10.6  本章小结 224
第11章  网页无障碍化 225
11.1  网页无障碍化标准与相关测试软件 227
11.1.1  网页无障碍化的主要国际标准 228
11.1.2  我国的网页无障碍化标准 231
11.1.3  常用的网页无障碍化测试软件 232
11.2  创建符合WCAG标准的网页 235
11.2.1  为非文本内容添加文本辅助信息 235
11.2.2  创建无障碍的输入项 240
11.2.3  支持在高对比度下浏览网页 243
11.2.4  创建无障碍的网页浏览导航 246
11.3  创建符合ARIA标准的网页 251
11.4  无障碍化测试流程 257
11.5  本章小结 260
11.6  参考资料 261