This book discusses the range of request brokers (including the hidden frame technique, iframes, and XMLHttp) and explains when one should be used over another. You will also learn different Ajax techniques and patterns for executing client-server communication on your web site and in web applications. Each chapter builds on information in the previous chapters so that by the end of the book, you will have gained the practical knowledge necessary to implement your own Ajax solutions.
What you will learn from this book
Different methods for achieving Ajax communication and when to use each
A variety of Ajax design patterns to use in specific data retrieval circumstances
Techniques for using Ajax with RSS and Atom to produce a web-based news aggregator
How to create Ajax widgets, such as a weather display and news ticker, that can be included in your web site
Who this book is for
There are great discussions of advanced concepts like JSON, REST, and SOAP-based web services and how Ajax is incorporated into them. Also, coding to allow cross-browser compatibility is stressed throughout the book, particularly in instantiating an XMLHTTP object across IE, Firefox, Mozilla and Safari. The authors' zXml and XParser are cited as two of several third-party libraries to seamlessly pull this off.
Some gems that I found within the book include Chapter 8 - "Web Site Widgets", which is very helpful, giving practical demonstrations and usable code for several Ajax-driven mini-applications we could all use in our web projects. Chapter 7's case study of a Google Suggest-style autocomplete text box was very elegant, using JSON as an alternative to XML's typically verbose payload. Chapter 2 - "Ajax Patterns" also abstracts many of the features common to apps using Ajax (i.e., polling, autosave, incremental updating). All are well done and greatly appreciated.
In criticism, the one chapter I found to be a letdown was Chapter 5 - "RSS/Atom", mainly because I'm very involved with work in that space. A terse description of content syndication is presented, but then followed exclusively by an analysis the FooReader.NET web-based RSS aggregator app. It's nice, but doesn't take a more holistic view of how Ajax is being used elsewhere. I would have also liked to see examples in emerging platforms, specifically Ruby on Rails and the Ajax support built directly into that web framework.
But overall this is a very good introductory read for experienced programmers wanting to get up to speed on the next big thing in advanced web UI development. I'm a better, more aware, more prepared developer for having read it.
"Professional Ajax" shoots from the hip. Go ahead, scour the web. Find every forum, article, or review about Ajax that allows users to post comments. You'll find a common complaint: "We've been doing that for years, we don't need a fancy new name." These guys understand this comment. They know what they're doing here, and they've got the battle scars to prove it. Call it what you want: Ajax, Web 2.0, or just business as usual, these authors know how to get the job done.
You won't find oversimplifications here: the authors don't skimp on details as they describe what goes into Ajax applications and show you how to build your own. The book concludes with a large and lovely guide through the process of developing a realistic Ajax-based email client similar to Gmail.
This is a nice pragmatic guide to coming up to speed with what's happening in interactive Web application development. You won't go wrong with this book.
Last month, I was contacted by Wrox Press asking me to review of this book, Professional Ajax. I of course jumped at the opportunity, and have found this to be a very well rounded guide to Ajax technologies. It serves not only a comprehensive overview of all the various methods for handing complex asynchronous information exchange, but is also a handy reference guide for creating highly sought after effects for integration in your own site projects.
They start out with a brief history, and show how the logic behind Ajax has evolved from framesets to iframes, and now the popular XMLHttpRequest. Since this is not an official W3C standard, a small bit of code forking is necessary. Most modern browsers handle it the same way, but Internet Explorer still treats it as an ActiveXObject. However, this change is slated with the release of IE7.
Since I'm already pretty familiar with the theories behind Ajax, the chapters that stood out to me the most were 6, 7 and 8. Chapter six was devoted to web services, covering SOAP, WSDL and REST. It also shows how to make a rudimentary browser calculator, and a spell checker using the Google API.
Chapter seven focused pretty exclusively on JSON, a lightweight alternative to using XML for asynchrounous data transmission. XML is argued to be more human readable, but since this information is created to be parsed and not read, the proponents of JSON prefer the lighter file size and ease of use.
Using JSON, they teach how to recreate Google's popular auto-suggest feature, which completes possible search terms as you type. Chapter eight is where things really start to get fun though, because they teach you how to make even more web-based widgets. These include an animated news ticker, a weather checker, and a localized website search engine using a few external API's.
The whole of chapter nine is devoted to constructing a web-based POP3 email application that mimicks the functionality of Gmail, including the courtesy of keeping the browser's Back and Forward buttons working normally. Chapter ten finishes off the book nicely by covering some popular Ajax frameworks, such as JPSpan for PHP, DWR for Java SDK and Ajax.NET for the .NET platform. Bascially, if you want to really delve into Ajax concepts, this book is ideal.