IBM®
跳转到主要内容
    中国 [选择]    使用条款
 
 
Select a scope: Search for:    
    首页    产品    服务与解决方案     支持与下载    个性化服务    
跳转到主要内容

developerWorks 中国  >  Rational  >

Rational Edge: 书评:Ajax 设计模式

developerWorks
文档选项

未显示需要 JavaScript 的文档选项


级别: 初级

David Susco, 在读研究生, Worcester Polytechnic Institute

2006 年 12 月 14 日

本文来自于 Rational Edge:一本 Michael Mahemoff 的书的评论,书名是Ajax 设计模式,涵盖了 Ajax(Asynchronous JavaScript and XML)的最佳实践和四种模式。

book coverMichael Mahemoff
O'Reilly Media,2006
ISBN: 0596101805
635 页

如果您正在寻找有关 Ajax 技术的教程,这本书并不适合作为开始点。然而,如果您已经非常熟悉 HTML、Cascading Style Sheets (CSS)、JavaScript 以及 XML,这本书就可以向您展示使用 Ajax 可能做到什么。打开 "Ajax 设计模式的序言,是一个用于开发人员、测试人员和经理的参考,他们想知道 Ajax 是如何用于真实世界的。"这就是本书真正能提供给我们的,高层的 "如何做" 、"在哪里做," 以及足够的实现详细指导了在通常方向上的开发人员。

本书被分成五个主要章节,介绍,以及后面的四个部分,这四个部分每个都有一个分类的模式。作者使用 "问题/影响/解决方案" 来展示这些模式,接着是额外的想法,还有真实世界的力量。这本书的整个代码范例,都是由 HTML,JavaScript 以及 PHP 编写的。

介绍描述了 Ajax 是什么,解释了如何使用它,并向读者显示了一些 high profile Ajax 应用程序。这些都是以高度重复的或令人厌烦方式完成的,这会阻碍读者更加快速阅读。对于本章中的所有空话,仅仅传达了很少的概念。作者在这里展现了 Ajax 的三个试用例子,包括使用 JavaScript 处理 Document Object Model、Web 远程接收 HTML 代码,以及创建动态行为。

在 Ajax 模式的第一章,作者按照 Foundational Technology Patterns 进行分类。这些模式就是作者描述为所有 Ajax 应用程序的"构建模块" 的东西。这是调用许多基础元素模式的扩展。他们展示了更多的特定解决方案,而不是一个解决问题的通用方法。然而,在这里仍然展示了一些有用的技术,也就是HTTP 流和所需的 JavaScript,JavaScript 在许多 Web 应用程序中都有应用。

下一章是这四个章节最有用的部分,将不同的模式分组在一起,作为编程模式,或者那些关注于软件技术质量的模式。这个分类被进一步分为五个子分类,其中最有用的部分是包含了"Browser-Server Dialogue" 和 "Performance Optimization"模式的章节。

下一章也是最长的一章,涵盖了 Functionality 和 Usability 模式。在 Widgets 子分类中的模式显示了一些用于 Web 应用程序的有用技术和实践,例如 Drill Down 和 Live Search 模式,确定它们本质上是否是模式仍然比较困难。

最后一章,"Development 模式",明显要比其它章短,只有三十页。这真是太糟了,因为有关 Debugging、Logging 以及 Testing 模式的部分是相当有用的。它们包含了许多有用的信息和工具,可以被用来开发更健壮的 Web 应用程序,这对即使非常有经验的编程人员也是很困难的。

总之,如果您是一个 Web 开发人员或设计师,Ajax 设计模式提供了一本很好的参考书。我推荐跳过介绍,因为它没有太大价值。在这本书中列出的许多想法和实践确实是有用的,但是记住,这本书并没有为您清楚描述解决方案--它只简单的列出一些构建模块,并让您进行思考。



参考资料



关于作者

David Susco 具有伍斯特工学院(WPI)的计算机科学学士学位,目前正在 WPI 读计算机科学的硕士。他的主要兴趣在软件工程和面向对象分析和设计。




对本文的评价










回页首


IBM 公司保留在 developerWorks 网站上发表的内容的著作权。未经IBM公司或原始作者的书面明确许可,请勿转载。如果您希望转载,请通过 提交转载请求表单 联系我们的编辑团队。
    关于 IBM 隐私条约 联系 IBM 使用条款