JavaScript e suas tendências no mercado de TI
-
Upload
fred-souza -
Category
Software
-
view
58 -
download
0
Transcript of JavaScript e suas tendências no mercado de TI
1a Semana de Computação da UFRJ
JavaScript e suas tendências no mercado de TI
1a Semana de Computação da UFRJ
Fred [email protected]
@fredamsouza
+FredSouza
@fredamsouza
@fmsouza
@fredamsouza
Quem éEstudante de Ciências da Computação na
UFRJ, Co-fundador do RioBus e programador JavaScript apaixonado. Costuma investir a
maior parte de seu tempo buscando por novas tecnologias e problemas.
ObjetivoUtilizar a tecnologia como ferramenta para
ajudar as pessoas.
Super poderesPró atividade, uma imensa vontade de ser a
diferença no mundo e uma vontade ainda maior de ajudar as pessoas.
1a Semana de Computação da UFRJ 1
JavaScript
● Linguagem de script
● Orientado a eventos
● Interpretado
● Versão 5.1
● Versão 6 em fase implementação (ECMAScript 6)
● Suportado pelos principais browsers (Chrome, Firefox, IE, Safari e Opera)
1a Semana de Computação da UFRJ 2
Internet em expansão
● Sites dinâmicos
● Necessidade de interatividade
● Atualização de conteúdos sem atualizar a página
● AJAX (Asynchronous Javascript and XML)
● As primeiras bibliotecas baseadas no AJAX (jQuery, MooTools, etc.)
1a Semana de Computação da UFRJ 3
Google e a engine V8
● Lançada dia 2 de setembro de 2008 junto ao Google Chrome
● Open source
● Escrita em C++
● Compila JS just-in-time para código de máquina nativo da plataforma
● Novo potencial mercado de aplicações em JavaScript fora do browser para
explorar
1a Semana de Computação da UFRJ 4
Surgimento do
● Lançado dia 27 de maio de 2009
● Baseado na V8
● Open source
● Extensível
● Modular
● Cross-platform
1a Semana de Computação da UFRJ 5
Node.js
● Gerenciador de dependências (NPM)
● 152868 pacotes disponíveis para usar em projetos (31/05/2015)
● Infraestrutura para desenvolvimento de aplicação multi-plataforma
● Surgimento de padrões de código (Commonjs, AMD, ...)
● Surgimento de ferramentas para otimização e gerenciamento de código de
projetos
1a Semana de Computação da UFRJ 6
Aprovação no mercado
● Paypal
● eBay
● Yahoo!
● Microsoft
● Uber
● The New York Times, Dow Jones, e mais um monte de gente...
1a Semana de Computação da UFRJ 7
Gerenciadores de projetos
● Criação de Tarefas de desenvolvimento
● Gerenciamento de dependências
● Scripts de execução
● Otimização de código (minify, uglify, transpiler, ...)
1a Semana de Computação da UFRJ 8
Linguagens “transpiladas” em JS
● ECMAScript 6 (ES6)
● CoffeScript
● TypeScript
● Dart
● Mais em https://goo.gl/BmNMxx
1a Semana de Computação da UFRJ 9
Frameworks Web MVVM
● Model View ViewModel
● Parecido com MVC
○ Controller integrado ao modelo da View
● Abstrai regras de negócio de forma organizada
● Modular
● Escalável
● Extensível
1a Semana de Computação da UFRJ 10
API com Node.js + ExpressJS
● Alta performance
● Suporta um número elevado de requisições simultâneas
● Extremamente rápido
● Aplicações distribuídas
● Altamente recomendado para construção de micro-serviços
1a Semana de Computação da UFRJ 11
Node.js x .NET
Fonte: http://www.salmanq.com/blog/net-and-node-js-performance-comparison/2013/03/
1a Semana de Computação da UFRJ 12
Node.js x Java
Fonte: https://www.paypal-engineering.com/2013/11/22/node-js-at-paypal/
1a Semana de Computação da UFRJ 13
Aplicativos multi-plataforma
● Android, iOS, Windows Phone, ...
● Tecnologias Web (HTML5+CSS3+JS)
● Desempenho próximo do nativo
● Write it once, run it everywhere
● Nativos: React Native (http://reactnative.com) ou Native Script (
http://nativescript.org)
● CylonJS para comunicação com Arduino (http://cylonjs.com)
1a Semana de Computação da UFRJ 14
Angular + ES6 = Angular 2
1a Semana de Computação da UFRJ 15
TypeScript
1a Semana de Computação da UFRJ
Fred [email protected]
@fredamsouza
+FredSouza
@fredamsouza
@fmsouza
@fredamsouza
Muito obrigado!