2 de fevereiro de 2012 – Por Lee Jacobson

Introdução

Esta é a primeira parte de uma série de tutoriais que eu quero escrever no Node.js. Devo deixar claro que não sou especialista no Node.js, mas uma boa maneira de verificar se você entende alguma coisa é tentar explicar isso para outra pessoa. Se você vir algo que você não acha que está certo, por favor me avise para que eu possa corrigir o erro, eu vou me certificar de lhe dar crédito.
Decidi aprender o Node.js recentemente devido à sua crescente popularidade. A indústria da programação move-se incrivelmente rápido e é perigoso ficar para trás. Aprender novas linguagens é importante porque se você não o fizer, é provável que você fique para trás e fique sem emprego. Pense em todos eles desenvolvedores flash que não conseguem mais encontrar nenhum trabalho.
Então vamos começar com um pouco de informação (blegh!).
Node.js é uma versão do JavaScript do lado do servidor. Isso significa que todas as coisas legais sobre JavaScript se aplicam aqui. Isso também significa que se você já está bastante familiarizado com JavaScript você vai ter uma boa vantagem. Node.js tem apenas alguns anos e isso significa que mesmo as pessoas que têm trabalhado com ele desde o início só o têm usado há alguns anos. Compare isso com o tempo que algumas pessoas escrevem em C. Sendo uma linguagem tão nova também significa que não há muitas pessoas que a conhecem e isso significa que pela simples regra de oferta e demanda sua habilidade vale mais do que seu programador PHP médio.
Criando olá mundoVamos criar um olá mundo. Primeiro vá até http://www.nodejs.org e faça o download do node.js. Quando estiver instalado e pronto crie um novo ficheiro JavaScript com o seguinte:

console.log(“Hello World”);

Agora salve o ficheiro, chame-lhe algo como “hello.js” e execute-o com o seguinte comando:

node hello.js

Por isso deve aparecer ‘Hello World’ no seu terminal. Tudo isso é bom mas tenho certeza que mais importante que você queira saber como imprimir ‘Hello World’ para novas conexões HTTP.
Abra o seu editor de texto e digite:
Agora salve o seu arquivo e execute-o com:

node hello.js

Você deve ver ‘Server started’ no terminal. Ótimo! Agora abra seu navegador web e vá para ‘http://localhost:8080’ você deve ver sua mensagem ‘Hello World’.
Vejamos mais de perto nosso código.
A primeira linha é só pegar o módulo http e salvá-lo para a variável ‘http’. O http está incluído no Node.js para nos facilitar a criação de aplicações Node.js.
Podemos então usar o módulo http para criar o nosso servidor http chamando a sua função ‘createServer’. Esta função retorna um objeto e pega uma função em um parâmetro.

Estamos chamando a função ‘listen’ em nosso novo objeto servidor que pega um valor numérico que diz ao nosso servidor em que porta queremos que ele escute. No nosso caso estamos usando a porta 8080 e é por isso que conectamos nosso navegador a http://localhost:8080
Nós também criamos uma função e a usamos como um parâmetro para a função ‘createServer’. Isto é uma coisa bem padrão para se fazer em JavaScript porque funções podem ser parâmetros assim como variáveis e objetos podem ser. O que vai acontecer é que cada vez que o nosso servidor recebe e nova conexão na porta 8080 vai rodar a nossa função que nós demos. Curiosamente a função que estamos passando para ela é chamada de função anônima, e é chamada assim porque nós não lhe damos um nome.
Você deve ter notado que nossa função anônima toma dois parâmetros, ‘request’ e ‘response’. Esses parâmetros são passados para nossa função anônima pelo servidor HTTP quando ele recebe uma nova conexão. Ambos são objetos que podemos usar em nossa resposta à requisição de entrada.
Você notou que a primeira coisa que fazemos é chamar a função ‘writeHead’, que nos permite definir o status HTTP como o primeiro parâmetro e enviar alguns cabeçalhos de resposta como o segundo parâmetro. Estamos a definir o código de estado 200 que está a dizer ao nosso browser que está tudo bem e estamos também a passar-lhe um cabeçalho ‘Content-Type’ que permite ao nosso browser saber o que o estamos a enviar. No nosso caso é apenas um simples texto.
Próximo, estamos usando o objeto de resposta para escrever o nosso ‘Hello World’. Fazemos isso simplesmente chamando-o de função de escrita e passando-lhe o nosso texto. Neste ponto terminamos com a nossa resposta, então dizemos ao objeto resposta chamando a sua função ‘end’.

Manter nossa resposta mais interessante

O mundo do olá é bem chato, então vamos fazer algo um pouco mais divertido. Podemos criar um contador de utilizadores muito facilmente em Node.js e nem sequer precisamos de usar uma base de dados como podemos fazer em PHP.
Criar um novo ficheiro JavaScript chamado, ‘counter.js’ e digite o seguinte:
Agora vamos corrê-lo com o comando,

node counter.js

Quando navega no seu browser para ‘http://localhost:8080’ deve agora obter um view counter.
Nota: Você pode ver o contador subindo por dois para cada pedido, isto é porque seu navegador está solicitando o favicon do servidor (http://localhost:8080/favicon.ico).
Você também deve ver que Node.js está registrando cada pedido que recebe no console.
A principal coisa que estamos fazendo aqui é definir uma variável ‘userCount’ e incrementar em cada pedido. Estamos então escrevendo a ‘userCount’ no texto de resposta.
No PHP para fazer o mesmo que você precisaria para salvar as informações em algo como um arquivo texto ou banco de dados.

Este tutorial também está disponível em chinês: http://www.laonan.net/blog/63/>
Obrigado ao laonan pela tradução

Se você gostou deste tutorial confira a parte 2, Node.js para iniciantes – Callbacks

Autor

Olá, eu sou Lee.
Eu sou um desenvolvedor do Reino Unido que ama tecnologia e negócios. Aqui você vai encontrar artigos e tutoriais sobre coisas que me interessam. Se você quiser me contratar ou saber mais sobre mim vá até a minha página sobre mim

Ligações Sociais

Tags