Ajax: The Definitive Guide
This book has soul. I like that. A lot of books get the technical details right, and explain them well but this book is unique in that it provides a bridge between the technical details and the actual creation of a Web site. The author, Anthony T. Holdener III, clearly has a lot of experience actually creating Web sites. Throughout the book he talks about usability, accessibility, and style; he talks about the golden ratio and the different requirements for corporate and government Web sites. But make no mistake, this is a technical book. And you ll come away from it with a good understanding of AJAX.
This book has 23 chapters organized in four parts, plus a fifth part composed of reference material. The first part covers the fundamentals of AJAX; the individual technologies that make up AJAX. The second part shows how the different technologies are combined in AJAX Web applications. The third part covers higher-level AJAX integration. The fourth part wraps up by covering modular coding and optimization. The final section contains appendixes covering references for technologies you ll need while building your Web application.
Part I consists of six chapters, the first of which uses MapQuest to show how the Web has changed from static pages that were recreated completely on every mouse click, to today s dynamic Web pages where maps can be dragged around at will. The second chapter talks about the move from Web pages to Web applications, and gives a short description about what is expected in different environments, such as commercial, educational, and governmental Web sites. This is an excellent example that this book was written by someone who designs Web sites rather that someone who simply writes about the technologies. Chapter 3 provides a quick overview of the databases, languages, and frameworks commonly used to build Web pages. Chapter 4 covers scripting XML, JSON (converts Java objects to text pairs for storage or transmission), and data exchange formats. Chapter 5 covers the document object model.
The first section closes with a discussion of interface design in Chapter 6; this chapter alone is worth the price of the book. Holdener shows some real-life examples of Web design gone wrong and how you can avoid making the same mistakes then follows with real-life examples of Web design done right (and how you can emulate the best of the Web designs in your own pages). This chapter also includes a short description of the golden ratio and how to use it in your Web pages. If you didn t major in art or math, you may have never heard of this principal. Trust me, you won t see it mentioned in any of the technology only books on AJAX. This chapter also includes a table showing which fonts are included on which operating system. Accessibility for handicapped users is also covered in this chapter.
The second section moves from the technologies covered in the first section to components that are used in Web applications. Chapter 7 covers methods of navigating Web pages, and includes one of the tidbits that gives this book its soul when the author explains why a button that has a light line at the top and left and a dark line on the bottom and right appears to rise out of the page, and a button with light lines on the bottom and right and dark lines on the top and left appears to be recessed into the page. Yep, you ll have to buy the book to find out. Chapter 8 covers tables and lists, including making them accessible to the blind, and sorting, including a quick introduction to different sorting algorithms.
Chapter 9 introduces the AJAX <div> element. Chapter 10 extends Chapter 9 with windows, tooltips, and pop-ups. Chapter 11 shows how to customize pages to each user s preferences using style switching. Chapter 12 covers error handling using the history of the Windows Blue Screen of Death as an example. Chapter 13 covers animation. Chapter 14 shows how to do Forms right, including using custom images for checkboxes and dropdowns, and explaining why you would want to do so. Chapter 15 covers validating data, including how to use the Luhn formula, prefix digits, and checksums to pre-validate credit card numbers. (The Luhn formula works in the sample and on my personal Visa card, but the checksum seems to have been computed incorrectly in the sample, as it fails on my personal Visa card. Maybe I just can t add; I reported this on the O Reilly errata Web page for confirmation.) The chapter also includes information about built-in validation functions included in various frameworks. It also covers SQL injection attacks.
Part III takes the technologies from Part I and the components from Part II and demonstrates how to integrate them into your Web applications. Chapter 16 shows how to make your Web site searchable, including using the Google Search API. Chapter 17 covers Web services, including SOAP, WSDL, REST servers, and RSS feeds. Chapter 18 continues where chapter 17 leaves off with Web services APIs, such as blogs, financial services, mapping services (including, among others, Google maps, Yahoo! Maps, Microsoft MapPoint and Virtual Earth, and the MapQuest OpenAPI), music and video services (including YouTube), news, search, shopping services, and Facebook. Chapter 19 provides a brief overview of mashups, giving some lists of what to do and what not to do. Chapter 20 shows some examples of how corporations can use AJAX-enabled Web applications for communication, using tools like chat, file transfers, and Web-based whiteboards.
Chapter 21 is about creating games. It is one of the longer chapters in the book (all the chapters are short, by most standards). It starts by covering the history of games, and the different types of games; this alone is longer than most of the other chapters. Why? I don t know. Holdener spends a lot of time on what game programmers call collision detection, determining when two moving objects overlap. I can see how that could be of use, but overall, this chapter, although fun, seems out of place.
Ajax: The Definitive Guide closes with Part V, a set of appendixes that will see far more use than the appendixes of most books. Of the four appendixes, only Appendix C, The Web Service API Catalog, is truly an appendix; the other three are well written text that could just as easily have been included in the main book. Appendix A, The XML and XSLT You Need to Know, is as good an introduction as I ve seen on the subject; it is also short and to the point. Appendix B is a survey of some of the available frameworks, toolkits, and libraries, and short samples of how to use them. The book ends with a short appendix of some of the risks of using AJAX, including accessibility and security issues, and some AJAX gotchas to watch out for.
Like many current O Reilly books, Ajax: The Definitive Guide comes with the ability to view the eBook online for 45 days. It does not include the ability to download the eBook. This book is both a great book on AJAX and an excellent source of Web design tidbits a combination that should earn it a place on every AJAX programmer s book shelf.
Title: Ajax: The Definitive Guide
Author: Anthony T. Holdener III
Publisher: O Reilly
Page Count: 924