Request more details:
Participants will gain the skills to quickly and effectively create new web applications with the latest techniques.
Cost: Price on application
Duration: 5 Days
This course is not available as part of our public schedule but can be provided on a customised client specific basis.
The Web Programming - Introduction course would be more appropriate for someone with only a little exposure to these technologies.
What is ES6 and can I use it?
var const let
Default parameter values
A Refresher of Objects:
The Object() constructor
Diving into OOP Principles:
Abstraction and modeling support
OOP principles support
Working with Encapsulation and Information Hiding:
Encapsulation and information hiding
Privacy levels using closure
Scope and closure
Benefits and drawbacks
A meta-closure approach
Immediately invoked function expressions
Creating a meta-closure with an IIFE
Managing isolated private members
A definitive solution with WeakMaps
Controlling access to public properties
Using getters and setters
Properties with internal state
Information hiding in ES6 classes
Inheriting and Creating Mixins:
Objects and prototypes
What is a prototype?
Inheritance and constructors
Implementing multiple inheritance
Creating and using mixins
Asynchronous Programming and Promises:
Event loop and asynchronous code
Events, Ajax, and other asynchronous stuff
Writing asynchronous code
Using events properties
Callbacks and this
The callback hell
The issues of asynchronous code
What are Promises?
The Promise terminology
Using Generators for asynchronous tasks
Advanced Object Creation:
Design patterns and object creation
Creating a singleton
The mysterious behavior of constructors
When to use singletons?
An object factory
Factory with constructor registration
The abstract factory
The builder pattern
When to use the builder pattern?
Comparing factory and builder patterns
Recycling objects with an object pool
Advanced CSS Selectors:
CSS level 3 selectors introduce lots of new ways of selecting elements on a page, we can use these to automatically style elements based on a number of criteria.
CSS level 4 selectors
CSS Features You Might Have Missed:
Rounded corners and shadows.
Size units, in particular vh and vw.
Vendor prefixes and auto-prefixer
SVG & CSS:
What are SVG images and what are the pros and cons of using them.
Where can I get SVG images?
4 ways to add SVG to your webpage, pros and cons of each.
Styling individual pieces of svg
Fonts, creating a SVG font and using it in your page.
Using SVG to make non-rectangular UI elements.
Animating a line drawing using stroke dash offset.
Animating multiple SVG elements independently
Traditional layout using float.
Reactive layouts, using media queries.
Multi column layout
Which CSS properties are animatable.
Animation using a 3D transform.
Using CSS animation on SVG elements.
What is a preprocessor?
SASS or LESS?
Mixins versus Extends
Functions and function parameters