O que é Node.js
Node.js é um ambiente de execução de código JavaScript baseado no engine de JavaScript V8 do Chrome. Ele permite a conversão de chamadas em JavaScript para código de máquina. Node.js é principalmente destinado à criação de aplicações de servidor em JavaScript, embora também existam projetos para desenvolvimento de aplicações desktop (como o Electron) e até mesmo para criação de código para microcontroladores. No entanto, nosso foco aqui é o uso do Node.js como plataforma para criação de aplicações web.
Uma característica do Node.js é que ele utiliza um único thread principal para receber e gerenciar todas as solicitações através de uma fila de pedidos. Portanto, o Node.js é um servidor monothread. Dentro desse thread, é executado um ciclo de eventos (event loop) que verifica continuamente as solicitações na fila de eventos e lida com eventos de entrada e saída.
Quando um usuário envia uma solicitação ao servidor Node.js, o ciclo de eventos verifica se a próxima solicitação requer uma operação de entrada ou saída bloqueante (como acessar um banco de dados ou o sistema de arquivos). Se não, a solicitação é processada diretamente e o resultado é enviado ao usuário.
Se a solicitação requer uma operação de entrada/saída bloqueante, um dos vários threads internos do Node.js é iniciado para realizar essa operação. Uma função de callback é passada para o thread, e ela é chamada assim que a operação bloqueante é concluída.
Durante operações bloqueantes de entrada/saída, o thread principal não é interrompido. O ciclo de eventos continua a verificar novas solicitações, garantindo que o Node.js não crie um número excessivo de threads e não consuma memória em excesso.
Instalação
Para baixar Node.js, visite o site oficial https://nodejs.org/en/ e clique no botão de download ( a versão LTS).
Para Windows, o instalador é um arquivo com extensão .msi

Após uma instalação bem-sucedida, você pode verificar a versão instalada abrindo o terminal ou a linha de comando e digitando o comando node -v
C:\Users\programicio>node -v v20.9.0
Versões de Node.js para outros sistemas operacionais, bem como o código-fonte, podem ser encontradas em https://nodejs.org/en/download/.
Ferramentas de Desenvolvimento
Para desenvolver em Node.js, um editor de texto simples é suficiente. Você pode usar qualquer um, como o Visual Studio Code.
REPL
Após instalar o Node.js, temos acesso a uma ferramenta chamada REPL (Read Eval Print Loop). REPL permite a execução de expressões JavaScript diretamente no terminal ou na linha de comando.
Abra o terminal e digite o comando node
C:\WINDOWS\system32>node Welcome to Node.js v20.9.0 Type ".help" for more information. > 2+6 8 >
Se pode utilizar alguma função JavaScript:
> console.log("Hello Programício"); Hello Programício undefined >
Você pode definir suas próprias funções e chamá-las, por exemplo, para calcular o quadrado de um número:
> function square(x){return x * x;} undefined > square(5) 25 >
Se você cometer um erro, o REPL informará:
> function square(x){return x * x;} undefined > squre() Uncaught ReferenceError: squre is not defined >
Executando Arquivos
Em vez de digitar todo o código diretamente no console, é mais conveniente colocá-lo em um arquivo externo. Por exemplo, crie um novo diretório no seu disco rígido, como C:\node\, e dentro dele, um novo arquivo app.js com o seguinte código:
console.log("Hello world");
No terminal, navegue até o diretório C:\node
cd
node app.js
Esse comando executará o código no arquivo app.js
C:\node>node app.js Hello world