JavaScript & Ajax
Course Overview
At the end of the training, participants will be able to:
- How JavaScript and AJAX works fundamentally
- How different kinds of Ajax libraries handle the technologies
Pre-requisite
- Good understanding of HTML and HTTP methods
- Programming experience with any high level language Good To Have
- Conceptual understanding of Web applications
- XML
Duration
2 days
Course Outline
- Overview of the role of web applications
- Difference between traditional and Web 2.0 applications
- Understanding the thin and thick clients
- Overview of enabling technologies: XHTML, CSS, JavaScript
- Developing and deploying a simple web apps that uses HTML, CSS and JavaScript
- Identifying the opportunities to make a simple web app as an RIA
- Building blocks: Data types, literals and variables
- Interacting with the user: alerts, confirms and prompts
- Operators and expressions
- Type checking and type conversion
- Control Structures: if and switch
- Iterations: while, do..while, for, for ..in
- Exception Handling: try, catch, throw
- Functions: Defining and invoking named and anonymous functions
- Overview of JavaScript Core objects
- Array objects
- String objects
- Date objects
- Math objects
- Navigator object
- Cookie object
- Creating user defined objects
- The need of a standard object model
- Overview of the DOM standard
- Understanding Window object
- Understanding Document object
- Survey of other important DOM objects
- DOM manipulation: creating, updating, deleting and accessing nodes
- Understanding the event model: bubbling, propagating and capturing events
- Survey of typical DOM events
- Handling events using JavaScript
- Developing active web pages by handling events and manipulating DOM elements
- Understanding the form submission process
- Short comings of the synchronous communication with the server
- Understanding the need of partial page updates and asynchronous communication
- Introducing the AJAX approach
- Inspecting the XHR object and its IDL API
- Understanding the callback mechanism
- Using AJAX using GET and POST
- Using AJAX for both synchronous and asynchronous communications
- Processing the XML payload of the AJAX response
- Manipulating the DOM nodes based on the response
- Developing an RIA using AJAX
- Shortcomings of XML payloads
- Understanding the need of JSON
- JSON Arrays and JSON Objects
- The eval function of JavaScript
- Processing the JSON payload of the AJAX response
- Manipulating the DOM nodes based on the response
- Developing an RIA using JSON and AJAX
- The concept of DWR
- Basic idea: Remoting between JavaScript client and the server side components
- Implementing DWR to make RIA
- The concept of SSP
- Basic idea: Using AJAX to implement server side notifications to the client
- Using SSP in making RIA
- The concept of Same Origin Policy
- Ways to overcome SOP: Dynamic loading of scripts
- Using JSON with Padding as a solution
- Overview of various AJAX libraries
- JQuery
- ExtJS (Overview)
- Dojo (Overview)
- GWT (Overview)
- Setting up JQuery
- Submitting GET and POST requests using JQuery AJAX API
- Processing the results
- Handling the errors
- The Vulnerabilities
- Tips and Best practices
- Javascript Injections
- Overview of HTML 5
- Overview of CSS 3
- Canvas
- Animations
- Transitions
- Transformations