• Home

    Escolha seu Plano

    Carreiras Alura

    Evolua com profundidade técnica, direção clara e aplicação prática.

    Jornadas guiadas do básico ao avançado com checkpoints práticos, desenhadas para quem busca profundidade e protagonismo técnico.

    Iniciante

    Comece do zero com uma trilha clara e progressiva.

    Fundamentos práticos para dar os primeiros passos com segurança e construir uma base sólida.

    Intermediário

    Continue sua evolução com cursos que conectam fundamentos, ferramentas e prática profissional. Ganhe autonomia, e avance para projetos mais completos.

    Avançado

    Aprofunde temas técnicos e estratégicos para enfrentar desafios mais complexos. Explore boas práticas, arquitetura, performance com visão profissional.

    Cursos

    Ver mais cursos de Back-end
    • Pensamento computacional: fundamentos da computação e lógica de programação
    • Lógica de programação: mergulhe em programação com JavaScript
    • DDD: fundamentos do design orientado a domínio
    • ASP.NET: autenticação e autorização em APIs e aplicações web
    • Microsserviços: migração de monólitos e modularização

    Cursos

    Ver mais cursos de Dados
    • Python para Dados: primeiros passos
    • Excel: domine o editor de planilhas
    • Engenharia de Dados: Orquestração de Pipelines com Apache Airflow
    • Power BI Desktop: construindo meu primeiro dashboard
    • Governança e Arquitetura de Dados

    Cursos

    Ver mais cursos de Inteligência Artificial
    • IA: Explorando o Potencial da Inteligência Artificial Generativa
    • Engenharia de Prompt: Criando Prompts Eficazes para IA Generativa
    • Claude para Análise de Dados: prompts, integrações e automações
    • Agno: criando agentes e sistemas multiagente
    • Engenharia de software na era da IA: segurança de aplicações com agentes, MCPs e código gerado por IA

    Cursos

    Ver mais cursos de Front-end
    • HTML e CSS: ambiente, estrutura e estilo
    • React: realizando testes avançados com Jest e Testing Library
    • React: integrando TypeScript em projetos
    • JavaScript: aprendendo a programar
    • React: aplicando arquiteturas de Micro frontends

    Cursos

    Ver mais cursos de DevOps
    • Sistema Operacional Linux: fundamentos e administração prática
    • Containers e Docker: empacotamento, isolamento e gestão
    • Redes: dos conceitos iniciais à criação de uma intranet
    • Linux: gerenciando diretórios, arquivos, permissões e processos
    • Cibersegurança: Fundamentos e práticas integradas

    Cursos

    Ver mais cursos de UX & Design
    • UX Research: mapeando a experiência da pessoa usuária
    • UX/UI Design: Entregando produtos digitais com IA
    • UI Design: Prototipação e animações interativas
    • Figma: Conhecendo o programa
    • Product Design: métricas e ciclo de vida do produto

    Cursos

    Ver mais cursos de Gestão & Negócios
    • Canva: Criação de landing pages e e-mail marketing
    • Agilidade: como ela pode ajudar a criar um time de alta performance
    • Google Analytics 4: Extrair insights e configurar eventos
    • Management 3.0: gerencie o ambiente, não as pessoas
    • Automação de processos com n8n: Inteligência de dados para Marketing

    Cursos

    Ver mais cursos de Mobile
    • React Native: Estilização e Layouts com Flexbox e StyleSheet
    • Flutter: Graphql e suporte offline
    • Android com Gemini: Trabalhando com textos e imagens na IA
    • Dart: trabalhando com orientação a objetos
    • React Native: Dominando Listas com FlatList e ScrollView

    Carreiras

    Ver mais carreiras
    • Especialista em IA
    • Engenharia de IA
    • Ai native software engineering
    • Arquitetura de Soluções com IA
    • AI Product Design
    • Engenharia de Machine Learning
    • Desenvolvimento Front-End React
    • Engenharia de Dados
    • Cloud Security
    • Social Media Marketing
    • Engenharia de Agentes de IA

    Cursos

    • Engenharia de Prompt: Prompts Eficazes para IA Generativa
    • Claude Code: Criando sua Primeira Aplicação
    • Python: Crie sua Primeira Aplicação
    • Git e GitHub: Compartilhando e Colaborando
    • N8N: Fluxos de Trabalho Avançados

    Cursos

    • Copilot Studio: Solução Multiagentes
    • Padrões de API HTTP e Modelagem de APIs
    • Python para Análise de Dados com SQL
    • Docker: Criando e Gerenciando Containers
    • Design com IA: Otimizando o Processo Criativo

    Cursos

    • Model Context Protocol (MCP)
    • Spec-Driven Development: Dev Assistido por Agentes
    • Arquitetura de Sistemas Distribuídos com Java
    • Governança de Modelos e Reprodutibilidade
    • Pentest: Vulnerabilidades em Aplicações Web

    Escolha seu Plano

    Skills & Go

    O Skills & Go é para Tech Leads, Product Managers, estrategistas e early adopters que transformam ideias em soluções de alto impacto. Em cursos ao vivo e 100% online, você domina a nova era da IA em tempo real.

    Aulas ao vivo

    Saiba mais
    • Agentic Engineering: orquestre múltiplos agentes com confiabilidade
    • Building AI Products: transforme ideias em produtos reais com IA
    • AI Data Strategy: transforme dados em decisões estratégicas com IA

    Escolha seu Plano

    Eventos Alura

    Nossos eventos são pensados para quem quer estar à frente das mudanças em tecnologia, IA e inovação. Em experiências presenciais, você acompanha tendências e se conecta com especialistas que estão moldando o futuro.

    Próximos eventos

    • Imersão Engenharia de Software: Dev na Era da IA
    • IA Conference
    • Alura Signals
  • Talent Lab
  • IA

    Escolha seu Plano

    Conteúdos gratuitos

    Explore conteúdos gratuitos para aprender tecnologia no seu ritmo. Encontre artigos com conteúdos técnicos para aprender na prática, notícias para acompanhar as principais tendências do mercado e o Alura Labs, com análises e reflexões de especialistas sobre tecnologia, IA e carreira.

    Conteúdos gratuitos

    • Artigos
    • Notícias
    • Alura Labs
  • Para Empresas
Ver planos
Links principais
  • Planos e Promoções
  • Links complementares do menu mobile
  • Talent lab
  • Inteligência Artificial
  • Pós Graduações
  • Para Empresas
  • Sobre a Alura
  • Grupo Alun
  • Entrar
    • Home
    • Carreiras
    • Skills & Go
    • Talent Lab
    • Inteligência Artificial
    • Pós Graduações
    • Artigos
    • Sobre a Alura
    • Grupo Alun
    LoginContato
    • LinkedIn
    • Instagram
    • YouTube
    1. Página inicial
    2. Back-end
    3. O que é Node.js: vantagens e usos na programação

    O que é Node.js: vantagens e usos na programação

    8 min8 minutos de leitura

    8 min8 minutos de leitura

    Publicado: 07/03/2022

    1. Introdução
    2. Node.JS e JavaScript
    3. Tudo bem, mas e o Node.JS?
    4. Como o Node.JS funciona?
    5. Características do Node.JS
    6. Empresas que usam Node.JS
    7. Meu primeiro código em Node.JS
    8. Conclusão

    Introdução

    Node.JS é uma ferramenta amplamente utilizada no universo de desenvolvimento e todos que atuam na área de tecnologia já ouviram falar, nem que seja nos milhares de anúncios de cursos ou mesmo de vagas. Mas você se pergunta: afinal, o que é Node.js? Para que serve? Como ele atua?

    Calma que, antes de olhar para o ambiente Node.JS, precisamos entender um pouco sobre o que é o JavaScript e como ele funciona. Vamos lá!?

    Banner do Guia Tático Alura sobre carreira em tecnologia, destacando o mapa da carreira tech. A imagem convida a explorar diferentes caminhos profissionais, comparar possibilidades e encontrar a próxima fase da carreira na área de tecnologia, com chamada “Explore o mapa”.

    Node.JS e JavaScript

    JavaScript é uma linguagem de programação que originalmente foi desenvolvida para trazer maior interatividade aos websites através da manipulação do DOM (Document Object Model). Vamos conferir a definição do livro que é uma referência na temática, o Eloquent JavaScript:

    O JavaScript foi introduzido em 1995 como uma forma de adicionar dinamicidade à páginas da web no navegador Netscape Navigator. Desde então, a linguagem foi adotada por todos os outros principais navegadores gráficos da web. Ela tornou possíveis o desenvolvimento das aplicações modernas da web - aplicações com os quais você pode interagir diretamente sem recarregar a página a cada ação. JavaScript também é usado em sites mais tradicionais para fornecer várias formas de interatividade de forma mais inteligente.

    Fonte: Tradução livre do livro Eloquent JavaScript

    Portanto, de forma resumida, podemos entender que o JavaScript foi pensado para ser rápido, dinâmico e acessível. A linguagem interpretada possibilita subir ou trabalhar em suas aplicações sem precisar configurar todo um ambiente complexo.

    Essas características motivaram o engenheiro de software Ryan Dahl a desenvolver um ambiente, como um programa que você instala no seu computador, que trabalha com a linguagem JavaScript fora do navegador e pelo lado do servidor, via terminal, de uma maneira menos restritiva.

    A imagem mostra um homem caucasiano com barba por fazer, por volta de 30 anos, com uma camisa xadrez, óculos redondos e segurando um microfone.

    Fonte: Ryan Dahl

    Tudo bem, mas e o Node.JS?

    O JavaScript nasceu para atender demandas voltadas ao Front e como as necessidades aumentam de acordo com o crescimento tecnológico, surgiu a ideia de utilizar uma mesma linguagem no lado do cliente e do servidor para otimizar processos e serviços. Dessa forma, o Node.JS aparece como uma alternativa viável para programação Back-End por se tratar de um ambiente para desenvolvimento utilizando a linguagem JavaScript.

    De acordo com sua definição oficial, o Node é um runtime, que nada mais é do que um conjunto de códigos, API’s, ou seja, são bibliotecas responsáveis pelo tempo de execução (é o que faz o seu programa rodar) que funciona como um interpretador de JavaScript fora do ambiente do navegador web.

    É importante frisar que o Node.JS é um ambiente de execução assíncrono, isto é, ele trabalha de modo a não bloquear no momento da execução da aplicação, delegando os processos demorados a um segundo plano.

    Ele dá muito certo com os servidores de arquitetura “single threaded”, isto significa que todos os pedidos para o servidor são executados no mesmo tópico - em vez de serem gerados em processos separados. Um dos grandes diferenciais da parceria Node.JS e Javascript é o bom desempenho no uso de APIs, já que o Javascript faz bastante uso de APIs assíncronas.

    Você deve estar se perguntando: “Beleza, já entendi o que é o Node.JS e seu diferencial quando o assunto é o seu uso com o Javascript, mas o que isso significa?” Vamos entender um pouco mais... vem comigo, que te explico...

    Como o Node.JS funciona?

    O Node é capaz de interpretar um código JavaScript, igual ao que o navegador faz. Sendo assim, quando o navegador recebe um comando em JavaScript, ele o interpreta e depois executa as instruções fornecidas.

    O Node é fantástico (totalmente “sem parcialidade”, aqui pessoal, juro!) porque torna possível o envio de instruções (os nossos códigos) sem precisar de um navegador ativo, basta ter o Node.JS instalado e utilizar o terminal para executar um programa construído em JavaScript.

    Além disso, você pode utilizar apenas uma linguagem de programação para tratar requisições entre cliente e servidor. Sensacional, não é?!

    O pequeno vídeo mostra um homem caucasiano, com óculos e entre os 50 anos. Ele leva as mãos com as pontas dos dedos fechados de sua testa e afasta lentamente com o movimento de abertura dos dedos. Ao mesmo tempo, ele abre lentamente a boca como se estivesse simulando uma explosão. Ao fundo há explosão de fogos de artifício e algo que parece ser uma constelação.

    Para que todo esse processo seja possível de ocorrer fora do navegador, o Node utiliza uma outra ferramenta chamada de Chrome's V8 JavaScript Engine. É esse motor V8 do Chrome que compila e executa o código JavaScript no lugar de apenas interpretá-lo.

    Ainda parece muito confuso? Vem comigo que te explico melhor…

    O motor V8 da Google é o centro, o coração que processa todo o código JavaScript do navegador para que sua máquina compreenda e disponibilize os recursos e interações. Só é possível visualizar páginas em JavaScript ou trabalhar com um código pelo Node.JS devido ao processamento do motor V8 do Chrome.

    A animação mostra o desenho de um coração pulsando e o que seriam suas artérias fazem conexão com quadros que mostram pequenas animações de uma corrente, um caderno de notas, engrenagens, um olho e um pequeno avatar (representa rede social) e uma carta com um @(representa correio eletrônico).

    Graças ao núcleo baseado em JavaScript e no motor V8 da Google, o Node.JS possui algumas características que, dependendo do cenário, podem ser consideradas como benefícios da plataforma, vamos conferir algumas?

    Características do Node.JS

    Node.JS pode ser utilizado nas famosas APIS Rest, web scrapping, chatbots, IoT, web servers, aplicações Desktop, tudo devido a sua característica altamente versátil. Dentre as principais, podemos citar:

    • Multiplataforma: permite criar desde aplicativos desktop, aplicativos móveis e até sites SaaS;
    • Multi-paradigma: é possível programar em diferentes paradigmas, como: Orientado a Objetos, funcional, imperativo e dirigido à eventos;
    • Open Source: é uma plataforma de código aberto, isso significa que você pode ter acesso ao código fonte do Node.JS e realizar suas próprias customizações ou mesmo contribuir para a comunidade de forma direta;
    • Escalável: Node.JS foi criado para construir aplicações web escaláveis, como podemos ver na sua documentação oficial.

    O Node.JS ainda apresenta uma curva de aprendizado relativamente menor comparado à outras linguagens voltadas ao Back-End e possui uma comunidade gigante disposta a ajudar. E sem dúvida a união dessas forças é o super poder do Node.JS!

    O desenho mostra um homem com terno e gravata abrindo a camiseta e mostrando o símbolo do node.js ao centro. Faz alusão ao super-herói superman.

    Fonte: https://www.shutterstock.com/

    Empresas que usam Node.JS

    Tudo bem, falamos das inúmeras qualidades do Node.JS mas, na prática… onde eu posso trabalhar com a ferramenta?

    Por conta dos super-poderes do Node.JS, uma gama de gigantes no mercado atua diretamente com a plataforma em suas regras de negócio, confere só a listinha de algumas:

    • NetFlix: substituiu o renderizador baseado em Java pelo de JavaScript com Node.JS para diminuir o tempo de espera nas requisições dos usuários e conseguiu uma redução de cerca de 1 minuto;
    • IBM: criou o The Canary in the Gold Mine (CITGM), um utilitário de testes amplamente utilizado pela companhia;
    • LinkedIn: o aplicativo mobile da maior rede profissional é construído em Node e HTML5, você pode conferir a matéria na íntegra aqui;
    • Uber: sistema de relacionamento entre usuários e condutores foi construído em Node.JS por conta de sua rápida resposta.

    E... pasmem! Node.js foi inclusive utilizado pela NASA para criar uma API que integra três bases de dados em um só, justamente para otimizar o acesso aos dados. Node.JS ajuda NASA a manter Astronautas seguros e arquivos acessíveis - em inglês.

    Node.JS está mesmo voando!!!

    A imagem mostra uma tartaruga sendo carregada por um foguete que tem escrito as palavras V8. Abaixo da gravura há o nome node.js e algumas nuvens ao redor, que sugerem vôo.

    Fonte: https://erickgledson.github.io/

    Meu primeiro código em Node.JS

    Para rodar a plataforma na sua máquina é necessário instalar o Node.JS. Caso você ainda não tenha, siga o tutorial Como instalar o Node.js no Windows, Linux e macOS.

    E depois colocar a mão no código!

    A animação mostra um cachorro de porte pequeno digitando freneticamente no teclado, a câmera enquadra no cachorro, no teclado e por fim tem uma visão de cima.

    Fonte: https://tenor.com/

    Aquele “Hello World!” para dar sorte:

    console.log(‘Hello, World!’)
    

    E agora você pode subir seu primeiro servidor:

    const http = require('http');
    const server = http.createServer(function (req, res) {
        res.writeHead(200, {'Content-type': 'text/html'});
        res.end('Hello Node!');
    });
    server.listen(3000);
    console.log('Servidor funcionando. Acesse: localhost:3000');
    

    Ah, é importante lembrar que aqui o código está de acordo com a última versão estável, a versão LTS (Long-term support ou suporte de longo prazo, em português). Mas o Node trouxe uma novidade muito bacana em sua nova versão, olha só no artigo Revolução no Node.js: adeus ao Axios e Node-fetch na versão 17.5.0.

    Agora é só comemorar e aprofundar seus estudos em Node.JS!

    A animação mostra os personagens do filme Minions vibrando, eles são baixos, tem formato cilíndrico com braços e pernas, possuem a cor amarela, olhos e boca grandes. Vestem um macacão jeans e óculos.

    Conclusão

    JavaScript é a linguagem mais usada no Brasil e no mundo. Sem dúvida o conhecimento nessa tecnologia é uma necessidade para qualquer desenvolvedor. O domínio de Node.JS pode ser um diferencial para quem deseja alçar voos mais altos em sua carreira, sobretudo o desenvolvedor web, e compreender mais sobre o ecossistema é fundamental para que a ferramenta sirva tenha alto nível de aproveitamento e qualidade de suas aplicações.

    Compartilhe com a gente no servidor da Alura as suas impressões sobre Node.JS, se você é estudante ou se já trabalha na área: Link para o Discord da Alura.

    E então, vamos aprender mais?

    • Formação JavaScript para Back-End
    • Formação Iniciante em Programação
    • Formação Node.js com Express
    • Node.js v17.5.0
    • O que é Node.JS
    • Primeiros passos com Node.js - Casa do Código
    • Node.js: O que é, quais as características e vantagens?
    • O que é JavaScript
    • O que é JavaScript? Hipster.tube
    • O que é Node Documentação Microsoft
    • Ecossistema Node.JS - Hipsters.tube
    • JavaScript.com
    Banner do Guia Tático Alura sobre carreira em tecnologia, destacando o mapa da carreira tech. A imagem convida a explorar diferentes caminhos profissionais, comparar possibilidades e encontrar a próxima fase da carreira na área de tecnologia, com chamada “Explore o mapa”.

    Avalie este artigo

    • Foto de Camila Pessôa

      Autor(a)

      Camila Pessôa

      Oi oi, sou a Camila ! Ingressei na área de tecnologia por meio da robótica educacional e comecei os estudos em programação com desenvolvimento web e foco Back-end com Node.js. Adoro ler, assistir séries/filmes, animes, jogar e passear ao ar livre com minha filhota. Tenho tenho grande paixão por educação e tecnologia, pois acredito que essa combinação é transformadora! :)

    Explore por tópico

    • Back-end
    • Dados
    • DevOps
    • Front-end
    • Gestão & Negócios
    • Institucionais
    • Inteligência Artificial
    • Mobile
    • UX & Design

    Leia também

    • 05/04/2021

      Python: a origem do nome

      Ler mais
    • 14/04/2022

      Como não aprender orientação a objetos: o excesso de ifs

      Ler mais
    • 29/08/2018

      Capturando eventos de click no Scratch

      Ler mais
    Ver mais conteúdos

    Inscreva-se em nossa Newsletter

    Fique por dentro de conteúdos, insights e oportunidades do universo tech. Receba novidades e lançamentos direto no seu e-mail.

    Institucional

    • Sobre nós
    • Trabalhe Conosco
    • Para Empresas
    • Para Escolas
    • Política de Privacidade
    • Compromisso de Integridade
    • Termos de Uso
    • Canal de Ética
    • Código de Ética
    • Fale Conosco
    • Documentos Institucionais
    • Status
    Institucional
    • Sobre nós
    • Trabalhe Conosco
    • Para Empresas
    • Para Escolas
    • Política de Privacidade
    • Compromisso de Integridade
    • Termos de Uso
    • Canal de Ética
    • Código de Ética
    • Fale Conosco
    • Documentos Institucionais
    • Status

    A Alura

    • Como Funciona
    • Inteligência Artificial
    • Plataforma
    • Depoimentos
    • Instrutores(as)
    • Dev em <T>
    • Luri, a Inteligência Artificial da Alura
    • IA Conference
    • Cursos Imersivos
    • Perguntas Frequentes
    A Alura
    • Como Funciona
    • Inteligência Artificial
    • Plataforma
    • Depoimentos
    • Instrutores(as)
    • Dev em <T>
    • Luri, a Inteligência Artificial da Alura
    • IA Conference
    • Cursos Imersivos
    • Perguntas Frequentes

    Conteúdos

    • Alura Cases
    • Imersão Engenharia de Software: Dev na Era da IA
    • Artigos
    • Podcasts
    • Artigos de educação corporativa
    Conteúdos
    • Alura Cases
    • Imersão Engenharia de Software: Dev na Era da IA
    • Artigos
    • Podcasts
    • Artigos de educação corporativa
    Uma Empresa do GrupoLogo Grupo Alun

    Outras empresas do Grupo Alun

    • FIAP
    • STARTSE
    • PM3
    • LUMINA

    Ao submeter seu e-mail, você concorda com a política de privacidade da Alura.

    Redes Sociais & Apps

    instagram
    youtube
    tiktok
    x
    appStore
    googlePlay
    Uma Empresa do GrupoLogo Grupo Alun

    Outras empresas do Grupo Alun

    • FIAP
    • STARTSE
    • PM3
    • LUMINA

    Ao submeter seu e-mail, você concorda com a política de privacidade da Alura.

    Redes Sociais & Apps

    instagram
    youtube
    tiktok
    x
    appStore
    googlePlay
    Alura