Treinamento JS

YES, TREINAMENTO JS!

Introdução

  • Interpretada
  • Dinamicamente tipada

Características da linguagem

  • ECMAScript - ES3 à ES6
    • O que é? Pra que serve?
    • 'use strict' (ES5)
    • Pré-processadores (ES6)

Evolução

Sintaxe

  • Criação por Construtor ou por literais
  • Escopo de bloco de código
  • Namespace

Constantes, variáveis e literais

Expressões, operadores e comparadores

  • === e !==
  • Undefined e Null
  • String + Number
  • Cast

Sintaxe

  • Declaração
  • Closures
  • Immediately-Invoked Function Expression (IIFE)
  • Hoisting
  • Chain
  • Callbacks
    • Callback Hell / events ftw
  • setTimeout e setInterval
  • Objetos literais e não literais
    • this & that

Funções e objetos

jQuery (ou nativo)

  • Custo
    • document.getElementById()
  • querySelector
  • find()
  • Cache

Seletores

  • on() e off()
  • Event delegation
  • Observer/Backbone.events

Events

  • Proposta
  • Never synchronous
  • Promises

Ajax

Evolução atos

  • Input hiddens / tag script
  • Menor interatividade
  • Esconder elementos

DOMCentric aproach

  • Datagrid
  • Modal
  • Validação
  • Menu de contexto
  • AjaxUtil
  • Mensagens
  • AtosI18n
  • AutoComplete

AtosCompoentes

  • Templates
    • <script type="html/template">
    • Arvore do ECM
    • Model feito na mão (DMO)
  • Social

Lodash / backbone

e muito mais :)

  • Task runners
    • Gulp
  • Scaffolding
    • Yeoman
  • Gerenciador de pacotes 
    • Bower
    • NPM

ferramentação

  • NodeJS
  • AngularJS
  • Pré-processadores
    • ​TypeScript e CoffeeScript
  • Cordova
    • Ionic Framework
  • Jasmine

Linguagens

Made with Slides.com