nodejs justdigital

16
Ricardo Gonçalves Developer

Upload: just-digital

Post on 13-Jan-2015

351 views

Category:

Documents


4 download

DESCRIPTION

NodeJS a poderosa solução de javascript server side. Palestra ministrada pelo Ricardo Gonçalves, developer na Just Digital.

TRANSCRIPT

Page 1: Nodejs justdigital

Ricardo GonçalvesDeveloper

Page 2: Nodejs justdigital

Nodejs JavaScript no server-side

● Nascido em 2009, pelo criador Ryan Dahl junto com 14 colaboradores no início dessa jornada

● Construído sobre o engine v8 JavaScript do Google Chrome

● Utiliza Javascript como linguagem

● Muito popular – um dos repositórios mais seguido no github

● Muitos módulos disponíveis

http://nodejs.org/

Page 3: Nodejs justdigital

O problema a ser solucionado!

O problema principal que eles queriam resolver com essa plataforma foi a de facilitar o desenvolvimento de aplicações real-time e de alta escalabilidade com isso surgiu o Node.js.

Page 4: Nodejs justdigital

O que você ganha com isso?

● Vai aprender uma tecnologia nova.

● Vai perceber que Node.js é simples de aprender, principalmente se você já trabalha com Javascript.

● Vai dominar uma tecnologia poderosa que possui recursos que vão desde a criação de um simples website até um sistema web com interações em tempo-real.

● Se você é programador front-end, vai amar Node.js simplesmente pelo fato de trabalhar com Javascript no back-end também.

Page 5: Nodejs justdigital

Principais características

● Linguagem Google Chrome Javascript V8

● Orientado à eventos de I/O

● Threads Não-Bloqueantes (Single Thread)

● Server-side assíncrono

Page 6: Nodejs justdigital

Linguagem Google Chrome Javascript V8

● Javascript no servidor

● Curva de aprendizado pequena

● Javascript no server-side da aplicação e o mesmo que conhecemos

● Foco maior na regra de negócio, como utilizar os diversos módulos e Design Patterns do Javascript

Page 7: Nodejs justdigital

Threads Não-BloqueantesThreads Não-Bloqueantes = Cardume

Threads Bloqueantes = Trânsito

Page 8: Nodejs justdigital

Módulos em Node.JS

● Módulos são cruciais para construção de aplicações em Node

● Padrão CommonJS na construção dos módulos

● Módulos do Núcleo do Node

● - Para trabalhar com sistema de arquivos existe o módulo fs e para redes os módulos são net (TCP), http, dgram (UDP), entre outros.

Page 9: Nodejs justdigital

NPM (Node Package Manager)

Node Package Manager, é o módulo de grande importância para projetos Node. Pois ele é um módulo global instalado para gerenciar a instalação de módulos no projeto, possui comandos semelhantes a um gerenciador de repositórios do Linux como apt-get, pacman, yum e outros.

Page 10: Nodejs justdigital

Expresso

Módulo voltado para realização de testes unitários em funções Javascript, cujo seus recursos seguem os conceitos da metodologia TDD - Test-Driven Development.

Page 11: Nodejs justdigital

Stylus

Framework voltado para gerenciamento dinâmico de CSS. Suas funcionalidades em destaque são: Mixin, Mixin parametrizáveis, variáveis para propriedades dos seletores, operadores com números, funções e namespaces, além de outras funcionalidades. Muito útil para implementar estilizações CSS complexas de forma produtiva e eficiente.

Page 12: Nodejs justdigital

Socket.IO

Framework cross-browser para comunicação real-time através de mensagens em broadcast. Possui integração com WebSockets, além de possuir o seu próprio script para trabalhar no lado cliente.

Page 13: Nodejs justdigital

Jade

Um template engine muito famoso para Node.js, para muitos é considerado uma versão melhorada do Haml, pelo fato de possuir uma síntaxe limpa e de fácil aprendizado. Permite trabalhar com variáveis e diversos comandos de servidor dentro da própria view e também permite criar partials no template.

Page 14: Nodejs justdigital

Instalação Para instalar o node e o NPM no ubuntu é muito

fácil.

Abra o console e execute os seguintes comandos:

sudo apt-get update

sudo apt-get install -y python-software-properties python g++ make

sudo add-apt-repository -y ppa:chris-lea/node.js

sudo apt-get update

sudo apt-get install nodejs

ou então, dependendo da sua versão do ubuntu.

sudo apt-get install nodejs

Para instalar o NPM basta executar os seguinte comando

curl http://npmjs.org/install.sh | sudo sh

Page 15: Nodejs justdigital

Vamos testar, escrevendo um helloworld.js

Abra um editor de texto de sua preferencia e digite:

var http = require('http');

http.createServer(function (req, res) {

res.writeHead(200, {'Content-Type': 'text/plain'});

res.end('Hello World\n');

}).listen(1337, "127.0.0.1");

console.log('Server running at http://127.0.0.1:1337/');

salve e rode o arquivo usando o comando:

node helloworld.js

após rodar, será exibido no console o texto Hello World.

Page 16: Nodejs justdigital

Para finalizarmos, o

famosochat em nodejs