Oi
O que eu sou:
Sou programador web e entusiasta node.js, tdd(test-driver development),
css modular (stylus e sass),js modular (node e angular) e
noSQL(mongoDB);
Contatos:
https://www.facebook.com/caio.cutrim.3
https://github.com/caiocutrim
http://caiocutrim.com.br
O problema das arquiteturas
bloqueantes
O problema das arquiteturas
bloqueantes
Blocking thread
O problema das arquiteturas
bloqueantes
Blocking thread
2009 nasce o node.js
Ryan Dahl autor do NodeJS
Event-Loop
O node.js é orientado a eventos;
Event-Loop
O node.js é orientado a eventos;
Sem eventos de clique, keyup ou qualquer
elemento HTML
Event-Loop
Trabalha com eventos de IO do servidor
Ex: connect(data base), open(archives) e etc...
Event-Loop
Trabalha com eventos de IO do servidor
Ex: connect(data base), open(archives) e etc...
É basicament Loop inifinto!
Beleza, como esse negócio
funciona?
● Instalação do node.js
– Download da plataforma pelo site http://nodejs.org/
– Para mac e windows, basta baixar seus
instaladores que “funfa de boa”
– Para iniciar o shell do node, digite node no terminal
Node no terminal(linux(gnome-terminal))
NPM
O que é o npm?
● Um gerenciador de pacotes para o node.js
– npm install nomedopacote
● Possibilita gerenciar as versões de pacotes
– npm install nomedopacote@versao
● Flags para ambientes
– npm install nomedopacote@versao --save
– npm install nomedopacote@versao –save--dev
Npm global
● Instalar globalmente facilita em alguns casos
– npm install -g nomedopacote
● Remover globalmente
– npm remove -g nomedopacote
● Remover localmente (projeto)
– npm remove nomedopacote
● Outros comandos
– npm list nomedopacote
– npm update nomedopacote
– npm whoami, npm publish
server.js
server.js
Express.js (Framework Node)
● O express estende a capacidade do servidor
http do node com seus middlewares.
● Middlewares: funções que lidam com
requisições;
– Podem ser aplicadas numa mesma requisição para
se atingir uma finalidade(ex.:segurança). Cada
middleware passará o controle para o próximo até
que todos sejam aplicados.
Iniciando nosso mini-projeto
● Digite no terminal, npm init (isso ira criar um
package.json) ele irá fazer uma série de
perguntas de configuração do projeto;
● Digite npm install express@4.8 –save
– node_modules*
● Criando o arquivo de configuração do express
– Crie o diretório config e dentro dele o arquivo
express.js
Iniciando nosso mini-projeto
Criada o diretório public e definida no express
Criaremos a view index.html em public/
O resultado deve ser esse :)
Bibliografia
● http://node.org;
● Livro casa do código Aplicações real-time com
node.js (Caio Ribeiro Pereira);
● Livro casa do código Mean-full-stack(Flávio
Almeida);

Conhecendo o Nodejs

  • 2.
    Oi O que eusou: Sou programador web e entusiasta node.js, tdd(test-driver development), css modular (stylus e sass),js modular (node e angular) e noSQL(mongoDB); Contatos: https://www.facebook.com/caio.cutrim.3 https://github.com/caiocutrim http://caiocutrim.com.br
  • 3.
    O problema dasarquiteturas bloqueantes
  • 4.
    O problema dasarquiteturas bloqueantes Blocking thread
  • 5.
    O problema dasarquiteturas bloqueantes Blocking thread
  • 6.
    2009 nasce onode.js Ryan Dahl autor do NodeJS
  • 7.
    Event-Loop O node.js éorientado a eventos;
  • 8.
    Event-Loop O node.js éorientado a eventos; Sem eventos de clique, keyup ou qualquer elemento HTML
  • 9.
    Event-Loop Trabalha com eventosde IO do servidor Ex: connect(data base), open(archives) e etc...
  • 10.
    Event-Loop Trabalha com eventosde IO do servidor Ex: connect(data base), open(archives) e etc... É basicament Loop inifinto!
  • 11.
    Beleza, como essenegócio funciona? ● Instalação do node.js – Download da plataforma pelo site http://nodejs.org/ – Para mac e windows, basta baixar seus instaladores que “funfa de boa” – Para iniciar o shell do node, digite node no terminal
  • 12.
  • 13.
  • 14.
    O que éo npm? ● Um gerenciador de pacotes para o node.js – npm install nomedopacote ● Possibilita gerenciar as versões de pacotes – npm install nomedopacote@versao ● Flags para ambientes – npm install nomedopacote@versao --save – npm install nomedopacote@versao –save--dev
  • 15.
    Npm global ● Instalarglobalmente facilita em alguns casos – npm install -g nomedopacote ● Remover globalmente – npm remove -g nomedopacote ● Remover localmente (projeto) – npm remove nomedopacote ● Outros comandos – npm list nomedopacote – npm update nomedopacote – npm whoami, npm publish
  • 16.
  • 17.
  • 18.
    Express.js (Framework Node) ●O express estende a capacidade do servidor http do node com seus middlewares. ● Middlewares: funções que lidam com requisições; – Podem ser aplicadas numa mesma requisição para se atingir uma finalidade(ex.:segurança). Cada middleware passará o controle para o próximo até que todos sejam aplicados.
  • 19.
    Iniciando nosso mini-projeto ●Digite no terminal, npm init (isso ira criar um package.json) ele irá fazer uma série de perguntas de configuração do projeto; ● Digite npm install express@4.8 –save – node_modules* ● Criando o arquivo de configuração do express – Crie o diretório config e dentro dele o arquivo express.js
  • 20.
  • 23.
    Criada o diretóriopublic e definida no express
  • 24.
    Criaremos a viewindex.html em public/
  • 25.
    O resultado deveser esse :)
  • 26.
    Bibliografia ● http://node.org; ● Livrocasa do código Aplicações real-time com node.js (Caio Ribeiro Pereira); ● Livro casa do código Mean-full-stack(Flávio Almeida);