View Review Details


Book:   Ajax: The Definitive Guide
Subject:   Exhaustive, but on-the-mark
Date:   2008-09-08 10:34:00
From:   Anonymous Reader
Rating:  StarStarStarStarStar

Let me preface this review by saying that I have never been a fan of thick programming or computer books. If a book is 2 inches thick, I often find only 1/2 to 1 inch of it to be valuable. However, most of Ajax: The Definitive Guide seems to hit the mark. Since Ajax development is such an expansive, and rapidly changing, topic, it is perhaps a good idea to shoot for too much rather than too little information. Most developers will find this book not only a good learning guide, but also a handy reference for a wide variety of coding needs.


One thing you will notice when scanning through this book is that there is a lot of code. The author is not afraid to publish pages and pages of Ajax code for readers to consider, copy and hack up to create their own applications. Not all is useful in real-world applications, however, since some of it is not cross-browser compatible (most often failing in Internet Explorer).


The first three chapters are largely an introduction to Web technologies, and can be skipped by most developers. In Chapter 4, the author introduces the XMLHttpRequest object, the object that puts the “asynchronous” in Ajax (an acronym for “asynchronous JavaScript and XML”). He details how to make simple applications that pull information from server-based XML or JSON, an alternative data format well suited to Ajax. Chapter 5 deals with Document Object Model programming, a critical task that allows developers to change the look and content of Web pages that have already been rendered.


After these foundational concepts, Part 2 contains nine chapters that provide specific solutions to common Web programming needs. Readers learn the ins and outs of creating Ajaxified navigation, forms, lists, tables, frames, etc.


Part 3, called “Ajax in Applications,” goes a step farther by showing the reader how to integrate Ajax with other applications. Chapter 16, for example, shows the reader how to incorporate Ajaxified Google search into a site and even include such dynamic features as search hinting. Other chapters in this section introduce Web services, Web APIs and even show how to create Ajax animated games.


Part 4 contains two chapters that show readers how to create more modular code, and how to create faster, more compressed code. This is critical considering the importance of speed to the user experience in Ajax.


One of the book’s shortfalls is the lack of information about the various Ajax libraries. Libraries and frameworks provide solutions to common programming needs: ready-made widgets, improved JavaScript programming notation, useful objects and easy cross-browser compatibility. The author includes a brief introduction to the libraries in chapter 4 and a reference in Appendix B. There are also mentions of the major libraries scattered throughout the chapters. However, it would be worthwhile to include at least a chapter devoted to each of the major libraries such as Dojo, Prototype and jQuery.


See larger cover


Recent Forum Posts