Linguagem de criação de scripts para a WEB, estes scripts são executados pelos browsers permitindo e agilizando a manipulação dos conteúdos alem de permitir adicionar novas funcionalidades a uma página WEB.
Javascript
Objetivos
Dotar os formandos de conhecimentos teóricos e práticos relacionados com a criação de interatividade com Javascript.
Destinatários
Programadores que pretendam adquirir conceitos sólidos de Javascript e AJAX estruturando conteúdos para uma página web.
Pré-Requisitos
Para frequência no curso de Javascript são necessários conhecimentos de programação: HTML.
Metodologia
Formação Presencial ou Live-Training (Formação Online Síncrona).
Programa
- Introdução, história e evolução dos vários standards da linguagem
- Breve introdução á historia de desenvolvimento da linguagem, e a sua evolução até aos dias de hoje.
- Conceitos / Instruções Básicas em javascript
- Tipos de dados primitivos em Javascript
- Estruturas de decisão e repetição em javascript
- Tipos de dados Complexos, Arrays, Objectos, Funções e Built-In Objects
- Browser Object Model (BOM)
- Document Object Model (DOM)
Global Objects (Number, String, Boolean, Undefined, Null, Object, Math, Date, …) - Conceito e manipulação do DOM (Document Object Model) numa aplicação web
- Conceito de interactividade com Eventos em JS
- Categorias (tipos) de Eventos em JS
- Definição de Eventos em JS (HTML event handler’s, Event Handler’s, DOM EventListeners)
- Conceito de Event Flow e suas fases em JS (Capturing, targeting e bubbling)
- Conceito de Event Object em JS
- Delegação de Eventos em JS
- Introdução á especificação ES6
- Evolução do standard de javascript e novas especificações ES6, ES7 e ES8
- Utilização de “Transpilers” como o BabelJS para a compilação de ES6 em “Vanilla Javascript” standard (ES5)
- Variáveis e parâmetros em ES6 (let e const, Destructuring, Default Parameters, Classes, Rest e Spread operators, multiline e template strings,…)
- Arrow functions, Iterators, e outros conceitos de Functional programming
- Novos métodos de manipulação de Arrays e Objectos (map, reduce, Object.Assign(), …)
- AJAX e JSON com Javascript (ES6)
Introdução, história e evolução dos vários standards da linguagem
Breve introdução á historia de desenvolvimento da linguagem, e a sua evolução até aos dias de hoje.
Conceitos / Instruções Básicas em javascript
- Expressões
- Comentários
- Variáveis e constantes
- Operadores
Tipos de dados primitivos em Javascript
- Numbers, Strings, Boolean, null, undefined
Estruturas de decisão e repetição em javascript
- Estruturas de decisão no controle do fluxo de um programa: (If, if/else, switch)
- Estruturas de repetição: (For, While, Do/While)
Tipos de dados Complexos, Arrays, Objectos, Funções e Built-In Objects
- Utilização de Arrays
- Criação de Objectos, propriedades e métodos
- Conceito de Função, funções com parâmetros
- Funções anónimas e IIFE (Imediate Invoked Function Expression)
- Funções “construtoras” de Objectos
- Conceito de “Scope” de uma variável, varáveis locais e globais, diferenças em ES6 com let e const
- Built-In Objects em JS
Browser Object Model (BOM)
Document Object Model (DOM)
Global Objects (Number, String, Boolean, Undefined, Null, Object, Math, Date, …)
Conceito e manipulação do DOM (Document Object Model) numa aplicação web
- Como o Browser interpreta o HTML e cria um Objecto (DOM), representativo dos elementos da página
- Tipos de elementos(Nodes) do DOM (Document, Element, Attributes e TextNodes)
- Processo e Conceito de manipulação do DOM
- Metodos para selecionar um elemento(node) ou uma coleção de elementos(nodelist) do DOM (Live e static methods)
- Propriedades e métodos para percorrer o DOM
- Alterar conteúdos de elementos do DOM
- Inserir, mover ou eliminar elementos do DOM
- Manipulação de atributos de elementos do DOM
- Trabalhar com Eventos em Javascript
Conceito de interactividade com Eventos em JS
Categorias (tipos) de Eventos em JS
Definição de Eventos em JS (HTML event handler’s, Event Handler’s, DOM EventListeners)
Conceito de Event Flow e suas fases em JS (Capturing, targeting e bubbling)
Conceito de Event Object em JS
Delegação de Eventos em JS
Introdução á especificação ES6
Evolução do standard de javascript e novas especificações ES6, ES7 e ES8
Utilização de “Transpilers” como o BabelJS para a compilação de ES6 em “Vanilla Javascript” standard (ES5)
Variáveis e parâmetros em ES6 (let e const, Destructuring, Default Parameters, Classes, Rest e Spread operators, multiline e template strings,…)
Arrow functions, Iterators, e outros conceitos de Functional programming
Novos métodos de manipulação de Arrays e Objectos (map, reduce, Object.Assign(), …)
AJAX e JSON com Javascript (ES6)
- Conceito de Ajax com JS (requests e responses)
- Tipos de dados numa comunicação assíncrona com o servidor
- Conceito de Promises (ES6)
- Utilização da “Fetch API” para chamadas assíncronas.
- Gestão de erros em Javascript
- Filtrar, Ordenar e pesquisar numa estrutura de dados em JS
- Introdução e utilização de algumas API’s de HTML5 (LocalStorage, SessionStorage, Geolocation, …)