ECMAScript 6

ECMAScript 6

£1,197.00 + VAT

Clear
Enquire Now
SKU: 5d4d65290d80 Categories: , ,
  • Certification
  • Supporting Material
  • 18-month Free course retake

Description

This is delivered as a Live Online “Virtual Class” – What is a Virtual Class? More info here

This course explores why the changes are happening and what is currently or soon to be supported. We explore Traceur as a means to use unsupported features now, even on browsers and devices which don’t yet understand ECMAScript 6.

 

WHO IS THIS COURSE FOR?

Web developers who are confident with HTML and have some JavaScript experience.

 

ASSUMED KNOWLEDGE

A very good grasp of HTML5 and a good understanding of JavaScript is required to get the most from this course. Exposure to Object Oriented programming techniques would be an advantage.

 

WHAT YOU WILL LEARN

In this course, you will learn about the new version of JavaScript known as ES6, along with current and imminent device and browser support for this standard, and how to code with ES6 right now, and use Google Traceur to transcode for compatibility with older devices and browsers.

PUBLIC SCHEDULED CLASSES

Come into one of our centrally located training facilities. Small class sizes, industry experienced instructors, and many classes lead towards certification.

VIRTUAL STUDENT

Attend a real-time class without leaving home.

PRIVATE TRAINING

We can organise training for you. We can do it for only one person or a group. Give us a call an we can make arrangements for your course.

LIVE ONLINE TRAINING

With our online toolbox let your global team learn together. Give us a call and we can make arrangements for your course.

ACADEMY IN A CASE

If you can’t come to us we can come to you. Give us a call and we can make arrangements for your course.

Outline

Introducing Modern JavaScript

  • Controlling access, type, and mutability
  • Functions, scope, namespaces and closure
  • Object serialization
  • Overview of AJAX principles
  • JavaScript security
  • Client-Side Event handling
  • Client Side data persistence

Current and Imminent Support

  • Features which are already supported in some browsers and devices
  • Forthcoming built-in support
  • Polyfill
  • Legacy: where support will never happen

ECMAScript 6 objects, properties and methods

  • Classes, subclasses and constructors: Object-Oriented techniques in JavaScript

JavaScript Design Patterns (focussing on ECMAScript 6)

  • Modular JavaScript principles
  • MVC, MVVM, Service, Factory etc.

Building the User Experience: overview of modern JavaScript frameworks

  • The jQuery family
  • Angular, Bootstrap and Dart
  • AtScript and TypeScript
  • Other JavaScript frameworks and libraries

ECME-262 6th Edition

  • The 2015 ECMAScript Language Specification
  • Already some support in some browsers/devices
  • Enable Harmony in Chrome

Need for software development capabilities

  • Components and Modules
  • Single-threaded ‘blocking’ problem
  • Reduce use of ‘function’ keyword

Traceur

  • JavaScript.next-to-JavaScript-of-today converter
  • Converting offline
  • Online Read-Eval-Print-Loop for exploring ES6
  • Impact on performance

Sugar Syntax

  • Make a language easier to understand and more readable
  • Some features of ES6 are not really new
  • All methods are still added to the prototype

ES6 Language Features

  • Number and Math Improvements
  • Maps, Sets and Weak Maps
  • Iterators and for of loops
  • Object Literal Enhancements
  • Arrow Functions
  • Let and Const for Block Scoped Binding
  • Default and Rest Parameters
  • Template Literals
  • Promises

Classes

  • Property Method Assignment
  • Object Initializer Shorthand
  • Class definition and name
  • Class prototype
  • Instance property and class property

Shadow DOM

  • Shadow root and shadow host

Module syntax

  • Named exports and Default exports
  • Importing modules

ECMAScript language types

  • Undefined, Null, Boolean, String, Symbol, Number, and Object

Testing

  • Overview of current JavaScript testing

NodeJS (optional content)

  • Configuring Node for non-browser JavaScript
  • Node packages
  • Running script