作者:empty 页数:524 出版社:empty |
一本伟大书不仅用为它判有山的内容和优秀的实例,更由于y清晰的式和准确的选, 需制比点的Wam,本不可少巾“我一本从头到仔细研了两通的技术国书2005年, A jux人惊呀地迅速成为主流技术, 而它的革命性影响只不过刚刚开始。是的, 在体过Aux应用之后, 再也不会有人满足干传统Web程序T就在销大适在询间Ajax是什么的时候, 本书横空出世, 阐述了Ajax开发棱术的方方面面; 不仅全面介绍了Ajax的基雄知识,更有师止的架构和模式的保刻深, 也有水般胶的实例展示, 而且注涌盖了专业Ajax开发必不可少的呵用性、安和性能等主题书中许部代修改就可以直接应用于项目中, 立即你的Web应用焕然一新。更可的是, 本书采取平白无关的方法, 实分别采用, NET、Jva和PHP解决方案, 适合使用各种语和工具的并发人员
本书是目前Ajax领域最为全面深入的一本著作, 其中不仅有对于基础知识的介绍, 还有对于Ajax开发中重大架构问题的深入探讨, 总结了大量Ajax开发中的设计模式, 并讨论了框架、安全性与性能等。书中提供了几个典型的例子,兼顾各种开发平台,这些例子的代码稍作修改就可以直接应用于项目开发之中,代码源文件可以从图灵网站下载。
独立软件咨询顾问, 有多年软件开发和软件项目管理的经验, 在J2EE、Ajax、敏捷软件开Web开发领域的一名老兵, 目前对Java、Ajax和XUL感兴趣, 除了背包旅行之外, 他也喜架构师,现就职于上海一家软件公司,具有多年企业应用软件的开发和管理经验,但仍不满我将这本书献给我的爱人和我的父母,你们的支持就是我前进的动力!专注于Web应用领域技术, 有Windows DNA/.NET和J2EE技术架构下开发的经历, 曾经担Original Englishlanguage edition published by Manning Publications Co., 209 Bruce ParkSimpli fed Chinese-language edition copyright O2005by Posts&Telecom Press.All rights本书中文简体字版由Manning Publications Co.授权人民邮电出版社独家出版。未经出版者书版权所有,侵权必究。发方法等领域有独到的见解。从事软件行业10年来,曾经担任过电信软件工程师、网站开发人员、售前工程师、软件项目经理、公司负责人等不同的角色, 有超过三年的Ajax开发经验, 在2005年11月创建了Ajax中国网站(ajax cn.org) , 担任站长。赵东炜(网名jacky z)欢羽毛球。王锡平足于目前的技术发展, 主要专注于Java、Linux及其他新技术在企业应用软件上的使用。张祖良(网名a liang)任过Web开发工程师、系统工程师和电子商务运营主管等职位。热衷于开源技术研究, 参与过PHP Prado项目翻译。目前比较关心Ajax、SO A技术和基于Notes企业内部管理流程的应用开发。郑帅中国科学技术大学学士(计算机专业),南洋理工大学硕士(通讯软件与网络专业),曾任汇丰集团(新加坡) 高级系统分析员, 现任职于新加坡Just Commodity技术有限公司, 产品开发经理、系统架构师(SCEA, OCP, ICSD) , 一贯致力于将最先进的开源产品与开发思想融入实际产品的设计中,有丰富的J2EE轻量级开发与设计经验,对自己一直编程到50岁充满信心和期待。张凯峰(网名大阿福)2004年4月毕业于华北电力大学(北京)计算机系,现为北大方正电子有限公司软件研发工程师,从事媒体行业应用集成系统的开发,热衷于技术交流与共享,许劲松硕士, 关注的领域有企业软件开发过程、面向服务的企业软件架构、基于Ajax技术的软件构件开发框架,主要从事企业综合信息系统的分析、设计和开发。Avenue, Greenwich, Connecticut 06830.Copyright@2005by Manning Publications Co.,reserved.面许可,不得以任何方式复制或抄袭本书内容
(译者序)普遍来说,中国人缺乏匠人的气质。“匠人”这个词在中国几乎是一个贬义词,例如说:“某相比之下,日本人是一个非常有匠人气质的民族,手艺精湛的匠人自古以来在日本都受到普自从Pete Me Breen所著的Software Craftsmanship(中文版名为《软件工艺》, 人民邮电出版Ajax in Action的作者无疑已经达到了软件工匠的层次, 本书充分体现出了他们的技术水平,想要开山立派, 必须高屋建瓴。达摩祖师、张三丰无不是这样的人物。本书作为Ajax技术某个技术领域的第一本著作往往并不是该领域中最好的著作,例如,大量的开发实践已经证尽管如此,作者并不是只讨论重大的架构问题,而忽略了具体的实现细节,这样往往会流于在本书中,有令人高山仰止的架构和设计模式的分析,有潺潺流水式的深入细致的实例讲解,本书由Ajax中国网站(a jaxen.org) 组织翻译。前言部分、第7章和第12章由王锡平翻译,某不过只是一个匠人,”但是其实国内的软件行业正是缺乏一大批对工作精益求精的软件工匠,这才是国内软件行业的主要问题所在。遍的尊重。在这个方面,我们需要向日本人学习的地方有很多,社出版)出版后,“软件工艺”为软件行业的从业者带来了“软件工程”之外的另一个重要的隐喻,在此之前,“软件工程”这个隐喻在软件行业中一直占据着绝对的话语权,软件工艺井非是为了彻底颠覆软件工程,而是为了促使大家将目光更多地投向精研软件建造过程中的工艺问题。这本书将软件开发者分成了三个层次:学徒开发者(Apprentice Developer) 、技师开发者(Jou mey men Developer) 和软件工匠(Craftsman) 。我将本书评价为大匠的杰作。时间将可以证明, 本书在Ajax技术著作的殿堂中, 会像米开朗基罗的大卫那样成为不朽之作。本书就像大卫那样充满了美感,其架构的复杂、计算的精确令人敬畏,堪称是工艺学和艺术的完美结合,领域的开山之作, 同样也达到了这样的高度, 虽然它是Ajax领域的第一本著作, 但是它所达到的高度至今仍然是同类著作难以企及的,明早年那些介绍J2EE开发的书价值是有限的, 真到Rod Johnson写出了经典的Expert J2EEDevelopment without EJB, 对于EJB的自目推崇才宜告结束。到目前为止, 与Ajax技术相关的著作在国外已经出版了10本以上,国内也在今年开始陆续出版大量相关的著作,包括翻译和原创。然而,我们会发现,本书目前仍然是这个领域最为全面和深入的一本,不仅包含细致介绍的基础知识和精心设计的实战例子, 更重要的是, 还涵盖了对Ajax开发中重大架构问题的深入探讨,并且总结出了大量的Ajax开发设计模式, 因此, 认为本书是一本讲架构和设计模式的书毫不过分。
大匠的杰作Ajax领域的新框架和组件库层出不穷, 一些功能非常简单, 一些则是过度设计的产物或者存在着严重的设计问题。Ajax开发者对于应该选择什么样的框架感到茫然无助。毫无疑问, Ajaxin Action可以帮助你。本书是目前已经出版的唯一一本深入探讨Ajax开发中的架构问题的著作,这使得它显得卓而不群。如果不去深入研究Ajax开发中的架构问题, Ajax开发领域将会再现J2EE开发领域早年的那种混乱局面, 本书将会使得Ajax开发秩序井然。我们需要的不完全是技术本身,还需要思考和选择的眼光,本书正是能够带给读者选择的眼光的著作,它使读者能够全方位地理解Ajax开发, 不仅仅是看到众多的树木, 更重要地是看到整片的森林, 架构设计的合理性和灵活性将是选择Ajax框架的一个首要因素, 将能决定任何Ajax框架未来的命运。一年之后,存在架构设计问题的很多框架都将会退出历史舞台,空泛,作者不仅仅是卓越的评论家,更是卓越的实干家。对于书中介绍的每一个架构和模式都给出了精心设计的例子。对于Ajax开发需要的所有基础知识, 作者都通过例子做了耐心细致的讲解。书中花费了一半的篇幅阐述了大量Ajax开发的实例, 展示了Ajax开发的方方面面。每一个实例中的代码最后都被重构为一个可以重用的组件,这些组件的不需要做任何修改,或者只需要稍作修改就可以直接应用在读者的项目开发之中,帮助用户得到更好的交互体验,娓娓道来,带给读者100%一对一的阅读体验。虽然讨论的内容很多,但是达到了形散神不散的效果。这个神就是改善Web应用的可用性, 可以说, 本书中所有关注的问题都是与改善Web应用的可用性相关的。这正是Ajax技术诞生的使命, 也应该是任何一个Ajax开发者需要牢记的,Ajax开发井不是一个纯粹的技术问题, 因为这里还涉及另一个重要的利益相关人, 就是最终用户。我们始终要把最终用户的感受放在首要位置, 才能开发出出色的Ajax应用。本书因为其内容的广泛和深入, 同时适合于Ajax开发的初学者和提高者, 两种类型的开发者都能从中得到巨大的收获。对于Ajax开发者来说, 本书可以作为案头常备的著作。作者就像是一位吹着笛子的魔法师, 循序渐进、深入浅出地将读者领进了Ajax这个迷人的殿堂。本书堪称是一片富饶的宝藏,等待着你——勇敢的探险家去探索和发现,第1章~第3章由赵东炜翻译,第4章和附录B、C由李馄翻译,第5章和第11章由张凯峰翻译,第6章由许劲松翻译,第8章~第10章由张祖良翻译,第13章和附录A由郑帅翻译,全书由李馄统稿、润色及审校。
2.4.1使用JavaScript操作DOM-.37
2.4.2寻找DOM节点….39
2.4.3创建DOM节点….40
2.4.4为文档增加样式.40
2.4.5捷径:使用innerHTML属性…42
2.5.1I Frames son.43
2.5.2XML Document和XML Hit p Request
2.5.3向服务器发送请求….46
2.5.4使用回调函数监视请求….49
2.5.5完整的生命周期.50
3.1.1模式:创造通用的词汇表.57
3.1.2重构与Ajax.58
3.1.3保持均衡…
3.1.4重构实战….59
3.2.1跨浏览器不一致性:Facade和
3.2.2管理事件处理函数:Observer
3.2.4保持对资源的唯一引用:
5.2.1流行的实现语言.129
5.2.2N层架构……a.129
5.2.3维护客户端和服务器端的领域
5.3.1不使用框架进行简单的Web
5.3.2使用Model 2工作流框架.132
5.3.3使用基于组件的框架.133
5.3.4使用面向服务的架构…….135
5.4.3从Web页面的角度思考:以内
5.4.4从插件的角度思考:以脚本为
5.4.5从应用的角度思考:以数据为
5.5.1使用HTML表单.154
5.5.2使用XMLHttpRequest对象.….156
5.5.3有效地管理用户的更新.157
6.3.1对通知建模….177
第一部分
第1章
重新思考Web应用
一种新的Web设计方法.2
1.1.1°比较用户体验…3
1.1.3异步交互.8
1.1.4独占或瞬态的使用模式.-.11
1.1.5忘掉Web-.12
1.2.1浏览器中的是应用而不是内容13
1.2.2服务器交付的是数据而不是
12.3用户交互变得流畅面连续.15
1.2.4有纪律的严肃编程.-.18
1.3.1
1.3.2 GoogleMaps-.
1.4.1基于Macromedia Flash的方案…22
14.2JavaWeb Start及其相关技术…22
3.4.1不使用模式的Ajax Web服务
3.4.2重构锁域模型….78
3.4.3从表现中分离内容….81
3.5.1跨浏览器库.
3.5.2UI组件和UI组件套件….88
4.1.1以不同的规模重复MVC模式…96
4.3.1传统的JavaScript事件处理
4.3.3在JavaScript中实现灵活的事
4.4.1使用JavaScript为业务领域
4.5.1 JavaScript对象的反射….118
1.1为什么需要Ajax富客户端??.
1.1.2网络延…
1.2Ajax的四个基本原则….
13真实世界中的Ajax富客户端…1-
1.4Ajax的替代方案….
小结.….
1.6资源….
第2章
2.1Ajax的关健元素…
2.2用JavaScript改善用户体验….27
2.3用CSS定义应用的外观…
2.5使用XML技术异步加载数据-.42
2.6Ajax有何不同.
小结…
2.8资源.54
第3章使Ajax秩序井然-.6
3.1从混沌到秒序.
3.2一些小型重构的案例研究….62
3.3模型-视图-控制器.73
3.4Web服务器端的MVC-.75
5.3大局观:通用的服务器端设计.131
5.4细节:交换数据…….139
5.5向服务器写数据….--.154
5.6小结….165
5.7资源…
第6章
6.1做正确的事:开发高质量的应用……168
对象.
Adapter模式……
模式.1
重用用户操作处理函数:
Command模式….
内容….
现状…
Ajax新手上路----
2.3.1CSS选择器…
2.3.2CSS样式属性…
2.3.3简单的CSS例子.
2.4用DOM组织视图.
2目录
第三方库和框架…
3.5.3应用框架…
3.6小结.
资源…
第4章
4.1一种不同类型的MVC…
4.2Ajax应用中的视图.
Singleton模式---.70
模型-.130
服务器编码….131
仅限于客户端的交互…….139
介绍行星浏览器的例子…….139
容为中心的交互…….142
中心的交互….145
中心的交互.149
第三部分专业级的Ajax
用户体验.168
6.1.1响应性.169
6.1.2健壮性….169
一致性….170
6.1.4简单性….170
6.1.5付诸实践….171
让用户知情….171
6.2.1处理自己请求的响应…171
6.2.2处理其他用户提交的更新…173
6.3为Ajax设计透知系统…176
第二部分
作为应用