Anotações palestra: O futuro do JavaScript

Anotações da palestra do Jaydson Gomes no evento 16 Encontro Locaweb de 2014 chamada O Futuro do Javascript. História Brendan Eich (CTO Mozilla) inventou o Javascript. Diz ele que foi em 10 dias. O javascript foi criado em 1995 e pode ser conhecido por vários nomes: Mocha, LiveScript, Javascript e ECMAScript. O Javascritp está baseado

Anotações da palestra do Jaydson Gomes no evento 16 Encontro Locaweb de 2014 chamada O Futuro do Javascript.

História

  • Brendan Eich (CTO Mozilla) inventou o Javascript. Diz ele que foi em 10 dias.
  • O javascript foi criado em 1995 e pode ser conhecido por vários nomes: Mocha, LiveScript, Javascript e ECMAScript.
  • O Javascritp está baseado no ECMAScript, seguindo a especificação ECMA-262
  • Em 1999 apareceu a versão ECMA-3 (ES3). Ele incluiu algumas efeatures como expressões regulares, try/catch e outras.
  • Em 2008 a ES4 a versão foi abandonada. Por isso pulamos ela.
  • Mas em 2009 houve várias melhores na linguagem, aí surgiu a versão ES5
  • Tabela de compatibilidade da versão ES5. @kangax https://kangax.github.io/es5-compat-table/
  • CoffeScript é interessante porque ajuda na evolução da linguagem e da comunidade.
  • A versão ES6 do Javascript sai em Dezembro deste ano, com um bando de features bacanas. Há uma certa discussão sobre algumas novas features, como o Douglas Crockford não concordam com algumas features.

Arrows functions

  • É introduzido um novo operador que é um atalho para a criação de funções: =>
  • Lexical this binding
  • Not newable
  • Can’t change this
  • Always anonymous

Classes

  • Houve muita discussão por causa da inserção de classes no Javascript.
  • Para quem programa com Orientação a Objetos do modo clássico, já está acostumado a utilizar classes e vai conseguir trabalhar sem muitos problemas.
  • Isso não muda nada na linguagem. Vira uma opção a mais de uso.

Templates Strings

  • Multiline strings
  • Basic string formatting
  • HTML escaping
  • Localization of strings:

Parametros

  • Rest
  • Spread
  • Default

Block Scope

  • Let
  • Const

Modulos

  • Módulos tem sido discutido a muito tempo no Javascript

Promise

  • Uma promise representa um valor não necessariamente conhecido no seu tempo de criação.

  • Promises permitem associas handlers de sucesso ou erro de uma ação assíncrona

  • Compilador onde você escreve em ES5 e ele compila para ES6. O próprio Google usa isso nos seus projetos. (https://github.com/google/traceur-compiler)

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *