Ajax Design Patterns, O'Reilly

Microsoft .NET Framework, ASP.NET, Visual C# (CSharp, C Sharp, C-Sharp) Developer Training, Visual Studio


Jump to: navigation, search
  Title:  Ajax Design Patterns
  Author(s):  Michael Mahemoff
  Edition:  O'Reilly Media (June 1, 2006)
  Format:  Paperback: 635 pages
  ISBN:  0596101805
  Overall Rating:  Image:stars4H.gif The Bottom Line
C# Online.NET:Reviews: Book Reviews  •  Educ./Train. Reviews  •  Software Reviews  •  Top 10 Books

Contents


C# Online.NET Book Review

A design pattern has been called a "solution to a problem in context"—a high-quality solution to a recurring problem in design. This book contains approximately 70 "design patterns"; but, the term is used very loosely and without rigor. We have complained in other reviews of book titles being chosen because they had marketing sizzle rather than relevence to the book contents.

In this case, the author has made a legitimate stab at defining design patterns for Ajax; but, in that regard, he falls short. Most of the "patterns" are, in fact, solutions, techniques, or even processes. However, the book is of such value to the Ajax programmer—indeed, any Javascript programmer—that this shortcoming will penalize this review only slightly.

On the other hand, books on academic style design patterns tend to be very abstract, difficult to read, and a bit removed from day-to-day application. The "patterns" given in this book are very practical and are easily applied to address specific, real-world problems.

Most patterns in the book are introduced with a "Story" which provides a plausable context for exploring the pattern in question. Some technical readers object to reading anything but cold, curt, hard programming information like that found in a technical manual. But, I find the backstory to be a concise and useful method of introducing a pattern.

Each pattern follows the following format where applicable:

  • Pattern name
  • Story - example context
  • Problem
  • Forces - relevant design factors
  • Solution
  • Decisions
  • Real-World Examples
  • Code Example
  • Alternatives
  • Related Patterns
  • Metaphor - a brief explanation of the metaphor in the pattern name.

The book is well organized and a thoughtful read. Each pattern includes a thorough analysis, excellent examples, and references. Although the emphasis is on analysis and understanding, the book contains a good deal of Javascript source code. By all means, the reader should take a highlighter to the text; because, he will want to refer back to the book time and again.

The source code examples are in Javascript or, for server-side programming, PHP5.


Bottom line

The readers of Ajax Design Patterns will find they understand both Ajax and its applications better than their less well-read colleagues.

Publisher's description

This handy reference reveals how Ajax patterns can vastly improve your web development projects. It does so by investigating how others have successfully dealt with conflicting design principles, and then relaying that information directly to you. Includes sections on foundational technology patterns, programming patterns, functionality and usability patterns, and diagnosis/testing of Ajax applications.

Ajax, or Asynchronous JavaScript and XML, exploded onto the scene in the spring of 2005 and remains the hottest story among web developers. With its rich combination of technologies, Ajax provides a strong foundation for creating interactive web applications with XML or JSON-based web services by using JavaScript in the browser to process the web server response.

Ajax Design Patterns shows you best practices that can dramatically improve your web development projects. It investigates how others have successfully dealt with conflicting design principles in the past and then relays that information directly to you.

The patterns outlined in the book fall into four categories:

  • Foundational technology: Examines the raw technologies required for Ajax development
  • Programming: Exposes techniques that developers have discovered to ensure their Ajax applications are maintainable
  • Functionality and usability: Describes the types of user interfaces you'll come across in Ajax applications, as well as the new types of functionality that Ajax makes possible
  • Development: Explains the process being used to monitor, debug, and test Ajax applications

Ajax Design Patterns will also get you up to speed with core Ajax technologies, such as XMLHttpRequest, the DOM, and JSON. Technical discussions are followed by code examples so you can see for yourself just what is-and isn't-possible with Ajax. This handy reference will help you to produce high-quality Ajax architectures, streamline web application performance, and improve the user experience.

About the author(s)

Michael Mahemoff holds a Ph.D in Computer Science and Software Engineering from The University of Melbourne, where his thesis was on "Design Reuse in Software Engineering and Human-Computer Interaction". He lives in London and consults on software development issues in banking, healthcare, and logistics.

Table of Contents (abbreviated)

Part One. Introduction

1. Introducing Ajax

2. A Pattern-Led Tutorial

3. Ajax Design: Principles and Patterns


Part Two. Foundational Technology Patterns

4. Ajax App

5. Display Manipulation

6. Web Remoting

7. Dynamic Behavior

8. Extended Technologies


Part Three. Programming Patterns

9. Web Services

10. Browser-Server Dialogue

11. DOM Population

12. Code Generation and Reuse

13. Performance Optimization


Part Four. Functionality and Usability Patterns

14. Widgets

15. Page Architecture

16. Visual Effects

17. Functionality


Part Five. Development Patterns

18. Diagnosis

19. Testing


Part Six. Appendixes

A. Ajax Frameworks and Libraries

B. Setting Up the Code Examples

C. Patterns and Pattern Languages

D. References


Personal tools