- apresentar-se
- inicio - complemento netscape, mas evoluiu muito
- mostrar vários lugares onde podemos usar
- nao incentivo uso de js para tudo - precisamos analisar necessidades do projeto
node
- muitos nao fazem ideia das possibilidades
- ambiente diferente
- funcionalidades diferentes
- acesso aos arquivos do disco, SO
- base para outras funcionalidades que veremos
npm
- instalação e atualização de pacotes
- instalar programas - http-server (ex: apache) - nodemon (ex: ruby e python)
protractor
- testes de tela angular
- igual selenium
- vantagem: usar JS pra testes no navegador
grunt - gulp - brunch - automatizadores de tarefas
- obj: facilitar execução de scripts
- transpilação, minificação, testes
- ir além - salvar, testar jasmine, analisar pelo jslint, transpilar, minificar, commit e enviar email
express - hapi - koa - back-end
- back end
- apis - integrações de serviços
- Meteor - Sails - fullstack
mongodb
- FEITO EM C++
- seu console executa JS
- indexedDB - navegador
apps hibridos
- tecnologia nativa e web
- depende do navegador instalado
apps nativos
- react native - nativescript (angular - vue)
- sem webview - xml convertido para tela nativa
- nao depende do navegador do SO - use codigo moderno
apps desktop
- nw.js (antigo nodewebkit)
- electron - feito pelo github
- chromium + node integrados
- pode armazenar dados com indexedDB
apps feitos com electron
- Atom - Github(aplicação visual), wordpress, whatsapp, mongodb compass, postman, slack, vs code
jogos - phaser - impact
- uso do canvas
- prefiro unity (C#), mas jogos mais simples ficam mais leves em JS puro (vantagem apenas web)
plugins
- photoshop
- vs code extension
- navegadores
- staruml - modelador - diagramas
sistema operacional - nodeos
- baseado em linux com base em nodejs
- pacote npm é pacote do nodeos
- qqr um pode contribuir
- oferecer o necessario, npm cuida do resto
Programação de Hardwares e Internet das Coisas
- js além das telas dos computadores
- evento de drones com JS - nodecopter
- Internet das Coisas - noduino - node + arduino
- lampadas, portas e janelas de acordo com a iluminaçao ambiente
- gps do smartphone -> ligar cafeteira
tessel
- Projeto Tessel - placas vendidas no site
cylon.js
- framework voltado para robótica, computação física e Internet das Coisas.
3D
- canvas
- WebGL
- biblioteca muito utilizada - three.js
HoloJS - microsoft
- aplicações imersivas
- aplicações holográficas usando JavaScript e WebGL.
Realidade Virtual e Realidade Aumentada
- webgl
- JavaScript ARToolKit
- threejs - AR.js
Inteligência Artificial
- tensorflowjs - antigo deeplearnjs - browser e node
- treinamento e deploy de modelos - machine learning
Mapas
- Google Maps
- Google Earch
- imagens 3D
- Geolocalização
Emuladores
- GBA.js - game boy advance
Editores de Imagem
- edição
- animação
- imagens vetoriais
Edição, Leitura e Armazenamento de Documentos
- Google Docs
- One Drive - office
- documentos - planilhas - imagens - slides
videoconferencia
- Hangouts - skype
- webRTC - Real-Time Communications
- chamadas telefonicas
Reconhecimento de fala e conversão de texto
- essa apresentação - JS!
- onipresença
- nao há bala de prata - analisar necessidades do projeto para escolher melhor ferramenta
- possibilita experimentar novas áreas com conhecimento atual para entrar na área
- empresas com pouco dinheiro e tempo - dispensa treinamento da equipe ou novas contratações para lançar pelo menos um mvp
- reaproveitamento de código