@CanalQb

Node.js - Abordagem Não Obstrutiva


Olá Mundo, hoje vamos explorar o conceito de "não obstrutivo" no contexto do Node.js. Muitos recursos desta plataforma, assim como a maioria de suas bibliotecas, adotam o padrão "não obstrutivo". Isso significa que, em geral, é possível estruturar o código de forma que as operações não dependam do que está sendo executado.

Vamos exemplificar isso em um código prático: 
var frase;

carregaFrase = function (callback) {
  setTimeout(function() {
    // Simula leitura da frase no banco de dados.
    frase = "Minha frase não obstrutiva";
    callback();
  }, 3000);
}

imprimeFrase = function () {
  console.log(frase);
}

carregaFrase(imprimeFrase);

console.log("Olá");
Aqui, criamos a função carregaFrase, que tem como objetivo ler uma frase de uma fonte de dados. Em seguida, temos a função imprimeFrase, que exibe o valor da variável. Notavelmente, não estamos dependentes da leitura da frase na fonte de dados para imprimir o valor. A função imprimeFrase é passada como parâmetro e chamada como uma "callback" pela função de leitura.

No contexto do Node.js, tanto a função on quanto a createServer podem receber callbacks, exemplificando o padrão não obstrutivo.

Fique atento às vantagens dessa abordagem que promove maior flexibilidade e modularidade em seu código.

Fim.