Palestra apresentada no 9º Connecting Knowledge realizado pelo Things Hacker Team. Palestra sobre como desenvolver para Internet das Coisas utilizando JavaScript.
7. O Que é IoT?
•É a possibilidade de comunicação entre todos
os objetos que existem – enviando e recebendo
dados e informações com o intuito de facilitar a
vida das pessoas.
•Estima-se que a IoT terá mais de 20 bilhões de
devices em 2020
• Interação de objetos inteligentes
16. Introdução
• Plataforma baseada em Atmel da AVR
(ATMega168);
• Oferece um IDE e bibliotecas de programação
de alto nível;
• Open-source hardware e software
17. Introdução ao Arduino
• Ampla comunidade
• Programado em C/C++
• Transferência de firmware via USB
• MCU com bootloader
18. Aplicações Práticas
• Robôs
• Roupas eletrônicas
• Máquinas de corte e modelagem 3D de baixo
custo;
• Segway open-source
19. Aplicações Práticas
• Desenvolvimento de celulares customizados
• Instrumentos musicais
• Paredes interativas
• Instrumentação humana
• Circuit bending
31. JavaScript
• Criado por Brendan Eich em 1995
• Surgiu como script client-side de páginas web
• DISTINTA do JAVA
• Facilidade em interação com o Document
Object Model (DOM)
34. ExpressJS
Framework para Node.js que possui um robusto
conjunto de recursos para desenvolver
aplicações web, como um sistema de Views
intuitivo (MVC), um robusto sistema de
roteamento, um executável para geração de
aplicações e muito mais.
37. Liberação do CORS
app.all('/*', function(req, res, next) {
// CORS headers
res.header("Access-Control-Allow-Origin", "*"); // restrict it to the
required domain
res.header('Access-Control-Allow-Methods',
'GET,PUT,POST,DELETE,OPTIONS');
// Set custom headers for CORS
res.header('Access-Control-Allow-Headers', 'Content-
type,Accept,X-Access-Token,X-Key,x-requested-with');
if (req.method == 'OPTIONS') {
res.status(200).end();
} else {
next();
}
});
41. Acessar a url
• Através do browser:
– http://localhost:3000
• Através do curl
– curl http://localhost:3000
42. Nodemon
É um file watcher que roda internamente o
próprio comando node. Ele faz auto-restart
da aplicação, toda vez que um arquivo do
projeto for modificado.
43. Instalando e Rodando do Nodemon
npm install -g nodemon
nodemon <<nomearquivo>>
nodemon app.js
44. Johnny Five
Framework de código aberto que nos permite
controlar o hardware utilizando JavaScript,
desenvolvido pela Bocoup.
49. Exemplo de Código
var five = require("johnny-five"),
board = new five.Board();
var led;
board.on("ready", function() {
console.log("Arduino Conectado");
led = new five.Led(13);
});
52. AngularJS
Framework MVC completo com suporte a:
• Data Binding
• Injeção de Dependência
• Criação de Elementos HTML Personalizados (Diretivas)
• Carga de Modulos com Gerenciamento de Dependências
• Roteamento e Gestão de Histórico
• Serviços
• Promessas
57. Ionic Framework
Framework front-end para o desenvolvimento
de aplicativos móveis, que entrega um
conjunto rico de elementos de mobile UI,
unindo excelentes tecnologias como Apache
Cordova, AngularJS e Sass.
66. THT nas Redes Sociais
MEETUP.COM/THT-THINGS-HACKER-TEAM
THINGS HACKER TEAM
SLIDESHARE.NET/THINGSHACKERTEAM
TWITTER.COM/THINGSHACKERTM
GITHUB.COM/THINGSHACKERTEAM
FACEBOOK.COM/THINGSHACKERTEAM
WWW.THINGSHACKERTEAM.COM