Previous Page
Next Page

12.15. Summary

The ticket manager use case showed us a different development pattern. A light-weight back end exposed services that a heavier front-end JavaScript application used to build the actual ticket manager. This made JavaScript the primary development language and shifted the development processes much further from the standard Web development model than the other use cases. The approaches we covered would also be useful in cases in which JavaScript was taking more of a secondary role. These approaches include the following:

  • Exposing back-end functionality as a service gives the most flexibility to your AJAX code.

  • JSON's lightweight encoding makes it the perfect fit for heavy AJAX use.

  • Building small JavaScript components that are self-contained and have simple rules for interacting with the rest of the application helps manage complexity.

  • Usability must be thought about at the initial design stage, not bolted on later.

  • Visual sorting is easy to implement and easier for users to understand.

  • Creating utility functions for common JavaScript operations can speed development and make code more readable.

The ticket manager is a rich Internet application, offering quick response times, features such as drag-and-drop ticket assignments that are seldom seen in Web 1.0 applications, and high levels of usability throughout. However, it just scratches the surface of what's possible.

AJAX offers the ability to create highly interactive applications. AJAX-powered applications have the ability to help us create a new Weba Web 2.0. As you walk down the path to AJAX development, you need to be careful to avoid the bumps in the road. Keep your focus on the user's experience, not on technology, and strive to keep your code simple. As you rely more and more on AJAX, you'll want to move complexity to the client code, not create a situation in which both sides of the equation are extremely complex. AJAX development gives you lots of options, from moving data with JSON to updating the page with server-side generated HTML. However, what determines your success won't be what programming strategy you use, but how well you keep your focus on what the user needs.


Previous Page
Next Page