AJAX - Building Applications with AJAX

AJAX - Building Applications with AJAX

Audience

This course is for web developers or desktop application developers with experience in web technologies, who wish to develop the skills needed to apply AJAX technologies to existing web applications, or to architect and implement new applications that can benefit from the AJAX approach.

Prerequisites

Delegates must be technical staff with solid experience using HTML, CSS, and JavaScript in conventional web pages, including web-based forms, as well as familiarity with XML. Attending our 4 day JavaScript Developers Programme would provide the ideal prerequisites.

Duration

2 days. Hands on.

This course is available on site only. Please call for details.

Course Objectives

AJAX (Asynchronous JavaScript And XML) is the popular term for a broad collection of technologies and techniques that enable web-based applications to have the usability and responsiveness previously achievable only by installed applications. AJAX is a key element in the Web 2.0 revolution, and now seems poised to revolutionize software development in general with the promise of ending the hassles of deployment, installation, and release management for specialized applications.

The course consists of hands on workshops combined with short lecture sessions to provide an explanation and introduction to the techniques. Emphasis is on understanding and directly implementing basic AJAX techniques and using some essential client-side libraries to implement AJAX apps productively, and on applying these techniques to enhance the user experience and to support an effective application architecture.

On completion of the course delegates will:

  • Fully understand what AJAX is, how it works, and what differentiates an AJAX application from a conventional web application.
  • Be able to improve the usability of existing web pages by combining AJAX techniques and page elements with static elements.
  • Be able to send and receive data from the application server without interrupting the user’s workflow by refreshing the page.
  • Use such data in either XML or JSON format to add to, remove from, or update the page’s content.
  • Understand how asynchronous updates may improve (or detract from) the user’s experience and perception of the application.
  • Have solid experience using development tools including Javascript debuggers, DOM inspectors, and profilers to observe, debug and improve performance of AJAX apps.
  • Implement and bring home a set of frequently-used AJAX interaction techniques to use as a starting points in adding AJAX to actual applications.
  • Be able to use popular libraries including Prototype, Dojo, Sarissa, and Scriptaculous to simplify AJAX implementation and insure cross-browser compatibility.
  • Understand and apply the Model-View-Controller pattern in designing, implementing and refactoring user-interfaces.
  • Understand the value and features of emerging AJAX frameworks and support for server tools supporting AJAX techniques including RubyOnRails, Backbase, Atlas, Telerik, Tibco.

Course Content

What Is AJAX?
How AJAX is different from classic web pages.
Its impact on the user experience.
What kind of applications can benefit.
Who is using it now, and why?
Why AJAX totally changes Web Application development.
How AJAX can be integrated with conventional Web Applications.

Basic AJAX Techniques
Using CSS to define look and feel.
Understanding the DOM.
Using JavaScript to create, remove, move and stylize content.
Communicating with the server (Iframes, XmlDocument, XMLHttpRequest).
Essential AJAX Development Tools.

Using AJAX Effectively
Managing Asynchronous Activities.
Impacts on User Experience.
Impacts on the Development Process.
Patterns To Guide Implementation.
Application Evolution and Code Reuse.
The Value of Libraries.

JavaScript Way Beyond on Methods
It may look like Java, but it is not.
Managing Data.
Object-based JavaScript.
Callbacks/Events.

Specific - and Reusable - AJAX Techniques
Related Combo Boxes.
Type-Ahead Suggestions.
Information Pop-Ups.
Server-Side Validation.
Autosaved Forms.
Maps.
Logins.
Portals and Personalization.

It's Not Just Pages Anymore
Application Architecture.
The Model-View-Controller Pattern.
Separating the Controller from the View.
Separating the Model from the View.
The Role of the Server.
Client-Side Controller Implementation.

You Don’t Need to Invent It All
Widgets and User Interface Effects.
Remote Procedure Calls.
Mashups and Web Services.
Scriptaculous.
Dojo.
Sarissa.
JSON-RPC/DWR.

Building a Multi-User AJAX Application
A significantly complex client-server application that would be ineffective without AJAX is implemented over several workshop sessions.

Production-Ready AJAX
There’s more to an App than the Client-Side.
Keeping the User Happy.
What to Do When the Servers Not There.
Security and Privacy.
Test and Maintenance.
Performance.
Memory Usage.

Overview of Frameworks Supporting Ajax
What they do and when to consider them.
Backbase.
Telerik.
Atlas.
RubyOnRails.

Virtual Courses

ALL of our courses can be delivered virtually. And our Bath public schedule of courses are now available as live virtual sessions, using the popular Zoom Virtual Classroom and remote labs. Delegates can test their access at: www.zoom.us/test

On-Site Courses

Can't attend one of our public classes? Booking for multiple people?

All our courses are available on your site! Delivered for your staff, at your premises.

Contact us to find out more...