使用 DOM 和 AJAX 开始学习 XML:从新手到专业人士






4.60/5 (6投票s)
2006年12月5日
7分钟阅读

30981
Sas Jacobs 的著作《Beginning XML with DOM and AJAX: From Novice to Professional》(由 Apress 出版)对当今意味着能够以各种形式操作 XML 的 Web 开发世界进行了非常简洁的介绍。
|
引言
套用一句名言,不要以标题中大量的缩写和首字母缩略词来判断一本书的难度。Sas Jacobs 的著作《Beginning XML with DOM and AJAX: From Novice to Professional》(由 Apress 出版)对当今意味着能够以各种形式操作 XML 的 Web 开发世界进行了非常简洁的介绍。这本书或许更准确的标题应是《Web 开发人员操作 XML 文档的入门指南》或简单地称为《使用基于 XML 的 Web》。这本书远不像标题暗示的那样晦涩或充斥缩写。从头到尾,这本书快速地介绍了很多操作 XML 内容所需的工具和技能。
从零开始
由于 XML 的普遍性,从解释这项底层技术的一些章节开始是很有意义的。前三章是关于 XML、XML 推荐和 XML 词汇。在这三章中,作者提供了足够的信息来让你掌握 XML 的基础知识,而不会感到不知所措。事实上,整本书都给我这种感觉——信息丰富但不至于不知所措。第三章总结了相关的 XML 词汇,并提供了示例,从 XHTML 到 RSS 和 Web 服务。但这仅仅是开始。
从 XML 到 Web 的十步
在关于 XML 的基础章节之后,依次介绍了操作 XML 数据的各种方法。在这里,作者拓宽了我们的视野,讨论了 CSS、XSLT、JavaScript、AJAX 和 Flash,并进行了充分的解释,让你有信心在自己的项目中使用它们。这些章节内容丰富且快速。这些是当今最流行和最有力的技术,因此包含这些章节并这样组织它们是非常有意义的。这本书篇幅虽短,但书名的一部分“开始”得到了准确的体现——对于那些害怕接触不断变化的新技术的人来说,这是一本很好的入门书,这些新技术似乎比互联网初创公司制作的混合应用发布得更快。但副标题“从新手到专业人士”可能有点雄心勃勃。它肯定会让你从新手提升到一个新的水平。同样,“你需要知道的一切”这句宣传语也过于笼统且有点误导,但它绝对是对从脚本到样式表再到 AJAX 等所有 XML 操作方式的一个很好的介绍。第 4 章着眼于客户端脚本以及各种 Web 浏览器中对 XML 的支持。第 5 章涵盖了层叠样式表 (CSS),而第 6 章则快速介绍了可扩展样式表语言转换 (XSLT)。第 7 章在此基础上,解释了如何使用 XSLT 和 JavaScript 来完成更强大的 XML 内容转换。
这本书简单易懂——它能让你上手。它没有设定很多宏观背景,但它能让你进入一个对许多人来说可能是新领域。它快速而轻松,尽管可能有点过于简化。在哪里还能找到一本书涵盖了样式表和转换(不仅仅用于外观)、动态 XML 脚本、图形和网格以及特定于浏览器的提示?我从这本书中学到最多的就是,这些技术经常超出了它们最初的预期用途,但这没关系。Web 是一个创新充满活力的地方。第 8 章和第 9 章继续以 JavaScript 和 AJAX 快节奏地进行。第 10 章介绍了 Flash,这是另一种可编程显示 XML 内容的方式。
一旦你理解了内容的整体组织结构,你就可以深入到每一章,学习足够的知识来开始。这不是一本详细处理 XML 的所有方法的全集。相反,这是一本介绍技术和词汇的书,将帮助 Web 开发人员进入操作 XML 数据和 XML 文档的领域。就像旅游书籍将一个文化或国家精炼成一本书一样,它几乎变成了一个大纲,而没有关于这些技术的历史或传统的深入讨论。节奏一致——而且很快。写作算不上优秀——不会有获得伟大散文奖的可能,但它非常易读。我感觉就像被一个朋友带去参观博物馆或商店,他指出了重要的东西,但匆匆带我走过,以便我们能在短时间内看完所有东西。在 Web 设计的表现和布局方面没有浪费时间,但有很多内容可以阅读关于 Web 编程的内部,引擎(或者更准确地说,变速箱)。脚本方面有很多内容,我们将来会看到更多,所以我很高兴 Sas Jacobs 将中间章节集中在这些技术上。
从碎片到应用程序
最后的几章涉及更现实的世界主题,但要从客户端回溯。第 11 章关于服务器端技术是迄今为止所有客户端主题的必要平衡。最后两章是关于应用程序——在 .NET 和 PHP 中。在这里,你可以看到这些碎片如何在非常现实的实际场景中组合在一起。这是激励你将所学知识付诸实践的好方法。我感到失望的是它这么快就结束了。
批评
这本书肯定有一些批评意见,但这些可能会用“但这超出了本书的范围”或“我们不可能涵盖所有内容”来回答。我不知道为什么没有提到 XQuery。另外,我发现 DOM(文档对象模型)被早早提出,然后直到书中一半才介绍,这很奇怪。鉴于它在书名中如此醒目,我认为它应该更早地得到解释和启发。但我最大的抱怨是,根本没有提到 Java 或基于 Java 的解决方案来访问、操作和输出 Java 代码中的 XML 数据。作者完全忽略了 JAXP、JDOM 和 jom4j 作为操作 XML 进行 Web 开发的有效且流行的方法。
这本书提到了 RSS 和 SOAP,并将它们归类为 Web 词汇;我可能会将它们放在一个单独的章节中,也许会更详细地讨论 Web 服务,但我理解她的理由。而且我不是第一个注意到可能会有一个附录列出可以获取更多信息的来源。我在本文的结尾处附上了我自己的非常简短的列表。这本书涵盖了太多主题,读者肯定需要使用 Web 来查找更多信息。
结论
封底的引用“获得成功所需的一切”有些夸大,因为它没有提供所有成功所需的东西,但它确实提供了大部分让你大步前进所需的东西。这本书实际上是关于理解 Web 开发的基础,即使用最新工具操作 XML 内容。如果你正在寻找一本好的入门书来了解大多数网站开发任务的基础,那么这本书就是一个赢家。Sas Jacobs 成功地将一个可能庞大的主题浓缩成一本大约 400 页的书。这本书一点也不显得庞大。尽管遗漏了一些子主题,但我认为这本书在组织一个庞大(且不断增长)的主题方面做得很好,并以简洁有组织的方式呈现了现实世界的例子。
!更多阅读对于那些想深入了解的人,可以阅读这些 XML 和 Web 的介绍
在《XML 和 Web 技术导论》一书中,Anders Møller 和 Michael I. Schwartzbach (Addison-Wesley,2006年1月)
有关 Java XML 处理 API (JAXP) 的更多信息,