Advanced JavaScript: Extreme Measures
(JSADVAN, Live Instructor-Led Training, 4 days)


This SETC Certified course covers the development of application using JavaScript and HTML5. The course is catered towards developers who want to master advanced JavaScript techniques in HTML 5. Using modern and industry proven techniques, the developer will explore the component pieces of JavaScript application development, starting with advanced JavaScript going through to the new HTML5 APIS. This course assumes strong prior knowledge of the JavaScript programming language and HTML

Dates and Pricing

Nov 28 to Dec 1, 2017$2,500/person Jan 9 to Jan 12, 2018$2,500/person Feb 6 to Feb 9, 2018$2,500/person Mar 6 to Mar 9, 2018$2,500/person


Introduction JavaScript Application Development
JavaScript as a development platform
Web page and web application
The role of HTML5 and JavaScript
Creating multi-platform application
Advanced JavaScript
JavaScript and object oriented programming
The many ways of creating objects
Understanding objects and prototypes
Object functions and context
DOM Event Handling
Understanding DOM events
The event object
Binding functions to events
What is JSON
JSON vs JavaScript Notation
Using native JSON and fallbacks
JSON and security
HTML5 and Application Development
Why HTML5?
HTML5 as an application platform
Overview of the new JavaScript API
Interacting with the Platform
Understanding platform API
Working with screen and device orientation
Dynamically layout page
Working with touch events
Clipboard API
Drag and drop
HTML5 Storage
Say goodbye to cookies
Understanding Local Storage and Session Storage
Storing and retrieving information
Using JSON with storage
Limits of HTML5 storage
Other persistence method
Structured storage (deprecated, by request only)
File API
Accessing files with JavaScript
Using the File and FileList object
Reading and parsing files
Uploading files to server
Working with BLOBs
Geolocation API
Understanding the Geolocation API
Requesting position
Understanding the response
Using the response
Geolocation fallback
Asynchronous Communication
Introduction to Web Socket
Server setup overview
Sending and receiving messages
Processing messages asynchronously using Web Worker
Fallback for Web Sockets and Web Workers
Creating Graphics using SVG
Understanding SVG
SVG vs Canvas—which one to choose
Many ways to embed SVG in a web page
Dynamic SVG manipulation using JavaScript
Animating SVG using markup
Animating SVG using JavaScript
Fallback for SVG
Managing Canvas State
Persisting a canvas
Understanding canvas states
Using canvas transformation
Working with matrix transformation
Using save and restore
Canvas Path and Compositing
Working with path and hit regions
Advanced visual effect with strokes and fills
Using compositing
Making the canvas accessible
Pixel Manipulation
Direct pixel manipulation with ImageData
When (not) to use ImageData
Using createImageData and createImageDataHD
Working with the RGBA buffer
Using putImageData and putImageDataHD
Managing dirty rectangles
Advance Canvas
Advance drawing techniques
Drawing in 3D without WebGL
Creating fast and smooth animations
Video playback on the canvas
Fullscreen applications
Profiling canvas operations
Overview of WebGL
Understanding WebGL technology
Canvas2d vs WebGL
Creating pixels and fragment shaders
Rendering 3D elements
Animating 3D elements
Canvas Best Practices
Canvas and drawing performance
When to (not) use the canvas
Working with text
Colour space and correction
Security concerns for the canvas
From Web Page to Application
Online and offline application
Understanding HTML5 application caching
Application manifest
Testing for connectivity
HTML5 application best practices