Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Node.js for noobs
Caio Ribeiro Pereira
crpwebdev.com
About me
Web Developer
(Entusiasta JS)
Blogger
(udgwebdev.com)
Escritor 

(Casa do Código)
O que vamos ver?
Node.js
Big players
NPM (Node Package Manager)
Socket.IO
Microblog realtime na prática
nodejs.org
Características do Node.js
Plataforma web/mobile/desktop
JavaScript Server-side
Non-blocking I/O
Programação Async e Sync
...
Sobre a plataforma
Compatível nativamente:
HTTP/HTTPS
TCP/UDP
DNS
WebSockets
E muito mais via módulos 3rd-party!
JavaScript V8 + Server-side = Node.js

Node.js usa motor JavaScript V8, o
mesmo usado no Google Chrome
Non-Blocking I/O
Node.js roda em single-thread
Não existe dead-locks
Execução de I/O é não-blocante
Funções async são não-...
Non-blocking vs Blocking
Exemplo de I/O blocante
Non-blocking vs Blocking
Exemplo de I/O não blocante
Programação Async
Event-loop é o mecanismo para
processamento async no Node.js
Big players
npmjs.org
Node Package Manager
Gerenciador de dependências
+170k de módulos Node.js
+20 milhões de downloads por dia!
Integrado no N...
Principais comandos npm
npm init - Cria um package.json
npm install <módulo> - instala um módulo
npm remove <módulo> - rem...
Anatomia do package.json
{
“name”: “nome-do-modulo”,
“description”: “descricao do modulo”,
“version”: “1.0.0”,
“author”: “...
Socket.IO
Wrapper do protocolo WebSocket
Comunicação bidirecional (realtime)
Comunicação via eventos
Faz fallback em brows...
Microblog realtime
na prática
github.com/caio-ribeiro-pereira/microblog
Perguntas?
Thanks :)
Node.js for Noobs
Node.js for Noobs
Node.js for Noobs
Upcoming SlideShare
Loading in …5
×

Node.js for Noobs

1,518 views

Published on

Aprenda os conceitos básicos de Node.js e Socket.IO para se criar aplicações realtime ready de forma simples e fácil.

Published in: Technology
  • Be the first to comment

Node.js for Noobs

  1. 1. Node.js for noobs Caio Ribeiro Pereira crpwebdev.com
  2. 2. About me Web Developer (Entusiasta JS) Blogger (udgwebdev.com) Escritor 
 (Casa do Código)
  3. 3. O que vamos ver? Node.js Big players NPM (Node Package Manager) Socket.IO Microblog realtime na prática
  4. 4. nodejs.org
  5. 5. Características do Node.js Plataforma web/mobile/desktop JavaScript Server-side Non-blocking I/O Programação Async e Sync Desenvolvimento modular
  6. 6. Sobre a plataforma Compatível nativamente: HTTP/HTTPS TCP/UDP DNS WebSockets E muito mais via módulos 3rd-party!
  7. 7. JavaScript V8 + Server-side = Node.js
 Node.js usa motor JavaScript V8, o mesmo usado no Google Chrome
  8. 8. Non-Blocking I/O Node.js roda em single-thread Não existe dead-locks Execução de I/O é não-blocante Funções async são não-blocante
  9. 9. Non-blocking vs Blocking Exemplo de I/O blocante
  10. 10. Non-blocking vs Blocking Exemplo de I/O não blocante
  11. 11. Programação Async Event-loop é o mecanismo para processamento async no Node.js
  12. 12. Big players
  13. 13. npmjs.org
  14. 14. Node Package Manager Gerenciador de dependências +170k de módulos Node.js +20 milhões de downloads por dia! Integrado no Node.js desde versão 0.6.0
  15. 15. Principais comandos npm npm init - Cria um package.json npm install <módulo> - instala um módulo npm remove <módulo> - remove um módulo npm update <módulo> - atualiza um módulo Mais comandos do npm
 https://docs.npmjs.com
  16. 16. Anatomia do package.json { “name”: “nome-do-modulo”, “description”: “descricao do modulo”, “version”: “1.0.0”, “author”: “Nome <email>”, “dependencies”: {
 "moduloX": "1.0.0", "moduloY": "2.0.0"
 } }
  17. 17. Socket.IO Wrapper do protocolo WebSocket Comunicação bidirecional (realtime) Comunicação via eventos Faz fallback em browsers antigos FlashSocket Ajax Long-Pooling Para instalar: npm install socket.io
  18. 18. Microblog realtime na prática github.com/caio-ribeiro-pereira/microblog
  19. 19. Perguntas?
  20. 20. Thanks :)

×