Aguiar Dev
NodeJS
Programação·30 de julho de 2024·4 min

NodeJS

Resumo do episódio 62 do AguiarDev Talks. Prefere assistir? Veja o episódio completo →

Tiago Aguiar recebe Lucas Santos, desenvolvedor brasileiro radicado na Suécia, para explicar o que é o Node.js, de onde ele veio e por que se tornou uma das tecnologias mais usadas no back-end. A conversa cobre desde o funcionamento do motor V8 até as diferenças de mercado entre Brasil e Europa.

O que foi discutido

  • O que é o Node.js e como ele nasceu a partir do motor V8 do Chrome
  • As diferenças entre rodar JavaScript no browser e no Node
  • Que tipos de aplicação é possível construir com Node
  • As ferramentas de teste disponíveis, do Mocha ao Node Test Runner nativo
  • Como está o mercado de trabalho para quem trabalha com Node
  • Diferenças de demanda entre o mercado brasileiro e o europeu
  • Os riscos de aprender frameworks sem entender os fundamentos da web

Principais pontos

Node é um ambiente de execução, não uma linguagem

O Node.js nasceu em 2009 a partir do motor V8, extraído do Google Chrome, para permitir que o JavaScript rodasse fora do navegador. Diferente do browser, o Node não tem DOM, mas ganha acesso direto a sistema de arquivos, variáveis de ambiente e sockets — recursos bloqueados no ambiente sandboxed do navegador por questões de segurança.

O Node não tem limites de aplicação

Da criação de APIs web a ferramentas de linha de comando, servidores de arquivos, aplicações desktop (como o VS Code, construído em Electron) e até sistemas embarcados, o Node se tornou uma base para praticamente qualquer tipo de software. A máxima do mercado é direta: "se der para fazer em JavaScript, vai ser feito em JavaScript".

O ecossistema de testes do Node amadureceu sem depender de bibliotecas externas

Historicamente o Jest dominou os testes em JavaScript por trazer mocks, assertions fluentes e integração nativas, mas o Node Test Runner, disponível desde a versão 20, já permite escrever testes unitários, de integração e end-to-end usando apenas ferramentas nativas — sem instalar nada externo.

A demanda por Node é alta, mas a concorrência acompanha

A facilidade de aprender JavaScript atrai grande volume de profissionais, o que barateia contratações mas também intensifica a disputa por vagas. Na Europa, a exigência recai mais sobre TypeScript do que sobre JavaScript puro, refletindo empresas acostumadas a linguagens fortemente tipadas como Java e C#.

Pular fundamentos gera problemas de segurança e performance no longo prazo

A flexibilidade do JavaScript fez com que muitos desenvolvedores aprendessem a usar frameworks sem entender o que acontece por baixo — como funciona uma requisição, o que é o DOM, como a internet realmente opera. Essa lacuna de fundamentos tende a aparecer mais tarde como falhas de segurança e problemas de performance difíceis de diagnosticar.

Frase de destaque

"O Node, em palavras simples, é um lugar onde você consegue rodar JavaScript fora do browser" por Lucas Santos

Lições do episódio

  1. Entender a diferença entre o ambiente do browser e o do Node evita erros comuns de quem migra do front-end para o back-end.
  2. O Node cobre praticamente qualquer tipo de aplicação — vale conhecer o ecossistema antes de assumir que ele serve só para APIs web.
  3. O Node Test Runner nativo elimina a necessidade de bibliotecas externas para cobrir testes unitários, de integração e end-to-end.
  4. Para o mercado europeu, dominar TypeScript pesa mais do que apenas JavaScript — vale mapear essa exigência antes de buscar oportunidades fora do Brasil.
  5. Fundamentos de web (DOM, requisições, protocolos) continuam sendo a base que sustenta o uso seguro e performático de qualquer framework.
  6. A flexibilidade do JavaScript é uma vantagem e um risco ao mesmo tempo — sem disciplina, ela abre espaço para código difícil de manter.