@CanalQb

Node.js - Programação Orientada a Eventos



Orientação a Eventos é um conceito fundamental no Node.js, e neste post, vamos aprofundar esse tema que foi brevemente mencionado no post anterior "Node.js - Abordagem Não Obstrutiva".

No post anterior, utilizamos o conceito de Orientação a Eventos ao chamar o método listen do objeto do tipo servidor web, passando a porta 3000 como parâmetro. Com isso, configuramos a aplicação para ouvir ao evento que é emitido sempre que alguém faz uma requisição em localhost:3000. Esse evento é chamado de request.

Nos exemplos anteriores, foi utilizado um método chamado listen do objeto do tipo servidor web. Neste comando, especificamos à aplicação que, ao executar este evento, a porta 3000 seria acionada. Toda vez que alguém faz uma requisição em localhost:3000, a resposta seria servida pelo nosso HTML.

Para ilustrar melhor, vamos reescrever o script: 
var http = require('http');
var server = http.createServer();

server.on('request', function(req, res) {
  res.writeHead(200, { 'Content-Type': 'text/html; charset=utf-8' });
  res.end('<h2>Olá Mundo!</h2>');
});

server.listen(3000);

console.log('Servidor iniciado em localhost:3000. Pressione Ctrl+C para encerrar…');
Dessa forma, conseguimos visualizar de maneira mais clara e objetiva como os eventos operam para atender à página HTML. No objeto server, utilizamos o método on para escutar o evento request, e quando esse evento é acionado, as operações são executadas. Informamos também que essas operações serão realizadas na porta 3000 através do server.listen.

Essa é uma abordagem poderosa e central no Node.js, permitindo que você desenvolva aplicações eficientes e altamente responsivas.