Pesquisa recente realizada pelo portal InfoQ indicou que a linguagem mais usada em 2016 no desenvolvimento de aplicações Web é o Javascript. Para alguns especialistas em Java EE e .NET, isso parece ser uma surpresa. Para outros, que já acompanham a evolução do Javascript há alguns anos, isso não é novidade.
Nos últimos anos, a plataforma Javascript cresceu e se popularizou através de um rico conjunto de aceleradores. Exemplos incluem:
- Bibliotecas de componentes gráficos tais como o jQuery, ExtJS ou Telerik;
- Frameworks MV* de organização de eventos cliente e interações com o servidor tais como o AngularJS, Ember, Backbone, AureliaJS ou KnockoutJS.
- Linguagens como ClojureScript, TypeScript e CoffeScript e transpiladores que compilam o código dessas linguagens em código JavaScript;
- Bibliotecas para execução de código Javascript em ambiente servidor como o Node.js, Express, Koa, Meteor ou Sails.js.
- Ferramentas de gerenciamento de pacotes como o bower e npm.
- Ferramentas de automação de testes como o Mocha, jasmine, Karma, Selenium ou phantom.js.
- Ferramentas de automação de tarefas como o grunt, gulp, webpack ou sourcemap.
Oficialmente, a linguagem Javascript se chama ECMAScript e é padronizada pelo instituto europeu ECMA (http://www.ecmascript.org). A sua última especificação, a ES6 (ES2015/ Harmony / ECMAScript 6 / ECMAScript 2015) melhorou muito no aspecto de tipagem e facilidades de manutenção. O conceito de definição formal de variáveis, constantes, escopos de variáveis, classses, exportação e importação de módulos, entre outras novidades, foram incluídas nessa especificaçao. Isso é uma excelente notícia, especialmente para desenvolvedores Java e C# acostumados a linguagens fortemente tipadas.
Para quem está começando no JavaScript 6, uma excelente cola foi publicada pelo blog TopTal nesse sítio. Para quem está buscando uma referência rápidas de novidades, o sítio ES6-Features traz um excelente comparativo.
Finalmente, para quem quiser ume mergulho mais intenso, recomendo acessar e baixar a especificação do ECMAScript 2015, nome oficial dessa linguagem. (disponível em PDF e HTML)