Visão Geral
As 6ª e 7ª versões do ECMAScript, também conhecidas como ES2015 e ES2016, ampliam os recursos do JavaScript, tornando-o uma linguagem mais poderosa e eficiente para o desenvolvimento empresarial. JavaScript é a linguagem padrão para desenvolvimento baseado em navegador e está sendo cada vez mais usada no servidor para processamento de negócios usando Node.js. Este curso de treinamento ECMAScript cobre os novos recursos adicionados ao JavaScript nas versões mais recentes, ECMAScript 2015 e ECMAScript 2016. O curso também ensina os desenvolvedores a utilizar ferramentas e estruturas comuns para gerenciamento de pacotes, transpilação, implantação, teste e desenvolvimento de aplicativos.
Conteúdo Programatico
Introduction
- Revisiting JavaScript history
- Incorporating ECMAScript new versions and features
- Mapping TC39 release stages
- Moving ECMAScript to the server
Exploring JavaScript language features
- Programming with a weakly typed language
- Exploiting JavaScript’s dynamic nature
- Working with strings, numbers, dates, arrays
Developing Functional JavaScript Code
- Comparing function definitions vs. function expressions
- Manipulating function callbacks
- Passing functions as arguments
- Immediately invoked function expressions
- Understanding closures
Building JavaScript objects
- Coding object literals
- Adding properties and methods to objects
- Instantiating objects with constructor functions
- Defining prototype methods
- Serializing data with JSON
- Requesting services with XMLHttpRequest
Writing ECMAScript that runs everywhere
- Transpiling ECMAScript with Traceur and Babel
- Exploring transpiled code
- Ensuring best practices with strict mode
Simplifying variables and strings
- Declaring block scope variables with let
- Programming constants
- Exploiting new string methods
- Formatting output with template literals
Managing collections of data
- Taking advantage of new array methods
- Enumerating collections with iterators
- Manipulating data with sets and maps
- Producing iterable data with generators and yield
Streamlining functional programming with ES6
- Making asynchronous programming easier with promises
- Defining arrow functions
- Passing arrow functions as callbacks
Classes and Inheritance
- Defining classes
- Adding properties and methods to classes
- Simulating private state with WeakMap
- Creating unique property keys with symbols
- Coding getters, setters and constructors
- Extending classes with inheritance
Reusing JavaScript
- Defining modules
- Exporting and importing classes and functions
- Importing module functionality
- Running ECMAScript Sever-Side
Building applications for Node.js
- Installing Node.js
- Setting up a Node.js development environment
- Managing packages with npm
- The build process with webpack
Web services
- Creating Node.js web applications with Express
- Exposing RESTful services
- Calling Node.js services
Accessing stored data
- Processing NoSQL data with MongoDB
- Providing relational database data
Deploying quality code
- Unit testing ECMAScript with Jest
- Integrating code quality and analysis tools
Publishing ECMAScript applications
- Minimizing download size with tree-shake
- Integrating resource hashes for cache-busting