Node.js
Node.js é uma tecnologia usada para executar código JavaScript fora do navegador. Com ele podemos construir aplicações web em geral, desde web sites até APIs e microsserviços. Isso é possível graças a união do ambiente de execução de JavaScript fornecido pelo próprio Node.js e o motor de interpretação e execução de JavaScript presente no Google Chrome, chamado de V8.
O que é Node.js?
O Node.js é uma ferramenta que nos permite executar códigos escritos na linguagem JavaScript no servidor.
O JavaScript é interpretado por uma engine que a princípio só era encontrado nos navegadores de páginas web. É através desse motor que o navegador web vai interpretar o código escrito na linguagem JavaScript. Por este motivo o JavaScript era uma linguagem web apenas.
O Node.js utiliza o motor V8 do Google Chrome, ou seja a mesma ferramenta utilizada pelo navegador do Google para executar códigos JavaScript. Pelo fato do Node.js conseguir interpretar códigos JavaScript fora do navegador, o JavaScript deixou de ser apenas uma linguagem web e passou a ser também uma linguagem back-end (servidor) e mobile.
Podemos dizer que o Node.js:
- Interpreta códigos JavaScript fora do navegador.
- Nos permite criar códigos Back-end utilizando JavaScript.
- Nos permite criar códigos para dispositivos móveis utilizando JavaScript.
Nosso foco aqui é falar do Node.js na criação de sistemas Back-end.
Por que aprender Node.js?
Como já vimos, através do Node.js conseguimos executar códigos JavaScript direto no servidor o que tornou o JavaScript também uma linguagem back-end.
Como o JavaScript passou a ser executado no servidor alguns frameworks surgiram para acelerar o processo de criação de APIs utilizando JavaScript. O framework back-end que utiliza JavaScript que mais se destaca é o Express.
Não é possível criar um back-end JavaScript sem utilizar o Node.js, ele é extremamente importante para que a linguagem JavaScript e por consequência o framework Express sejam executados no servidor.
Dominar o framework Express utilizando o Node.js é essencial para se tornar um programador JavaScript Back-end e com isso ter acesso a excelentes vagas no mercado de trabalho.
Na DevMedia o aprendizado do Node.js está dividido em duas seções:
- Linguagem JavaScript, que será interpretada pelo Node.js e por isso é um pré-requisito.
- Node.js/Express, ferramenta utilizada interpretar JavaScript no servidor e o framework para criação de sistemas Back-end com JavaScript.
Exemplo de código Node.js/Express
Veja abaixo um exemplo de código Node.js/Express:
- JavaScript é a linguagem necessária para um sistema Back-end utilizando o Node.js.
- JavaScript é uma linguagem com tipagem mutável.
- JavaScript é uma linguagem multiparadigma.
Carreira Back-end e Node.js
Um software (uma página web ou aplicativo) é dividido, principalmente, em duas camadas: Front-end e Back-end. A idéia é simples:
O Front-end está relacionado com a interação do usuário: o que aparece na tela do celular, como o usuário interage com a página web, etc. O Front-end é a ‘capa’ do software.
O Back-end é o ‘core’, ou seja, é a parte do software que lida com os dados e com o processamento desses dados. Veja a imagem abaixo:

A função do programador Back-end JavaScript/Node.js é fornecer dados para que o Front-end web ou mobile exiba para o usuário.
Você não vai construir sistemas back-end somente com a linguagem JavaScript. Será através da ferramenta Node.js em conjunto com o framework Express que você vai poder juntar os componentes e assim produzir uma aplicação back-end completa. A linguagem JavaScript é um pré-requisito para você trabalhar com Node.js e Express.
Características da programação Back-end
- Acessa o banco de dados para guardar e resgatar as informações do sistema.
- Fornece dados para o Front-end exibir na tela do usuário - seja no navegador ou no aplicativo de celular.
- Faz a comunicação com sistemas de terceiros.
- Cria tarefas que são executados no servidor, como por exemplo enviar um email para os usuários.
- Cuida da ‘inteligência’ do software, ou seja, do ‘motor’ da aplicação.
- Se preocupa com os dados e não com a aparência.
Confira o plano de estudo:

Utilize JavaScript, Node.js e Express para se tornar um programador back-end completo
O que você vai aprender sobre Node.js na DevMedia
Por que aprender na DevMedia?
Estudar tecnologia na DevMedia é uma experiência única. Nossa metodologia de ensino é baseada nos seguintes pilares:
Plano de estudo orientado
Didática simples e fácil de entender
Exercícios gamificados para praticar
Suporte ao aluno 24 horas
Comunidade ativa de alunos
Encontro semanais com experts
Casos de sucesso da DevMedia
<Perguntas frequentes>
Confira outros conteúdos
Veja todos os conteúdos
1 Conquista
A linguagem Dart surgiu como alternativa ao JavaScript para ser executada em navegadores.
Sintaxe
Controle de fluxo
Estruturas de repetição
Funções
Orientação a objetos
100 exercícios
6 conteúdos
Avançado

1 Conquista
O Java é a tecnologia para desenvolvimento de aplica??es mais utilizada no mundo.
Intrudu??o
Sintaxe da linguagem
Date, Array e String
Orienta??o a objetos
Threads
100 exerc?cios
54 Conteúdos
Intermediário

5 Conquistas
A linguagem JavaScript é utilizada no back-end e front-end de aplicações web e mobile.
Fundamentos do JavaScript
Variáveis, tipos de dados e operadores
Estruturas condicionais
Estruturas de repetição
Manipulando Date, Arrays e String
250 exercícios
45 conteúdos
Iniciante

2 Conquistas
O React é uma biblioteca JavaScript leve e simples para criar interfaces de usuário.
State Hook e evento OnCLick
Componentes
Rotas
Props
APIs RESTfull
300 exercícios
11 conteúdos
Avançado

5 Conquistas
O Vue.js é um framework JavaScript usado para construção de SPAs, ou seja, aplicações de página única.
Formulários
Event Handling
Componentes
Props
APIs RESTfull
100 exercícios
4 conteúdos
Avançado

5 Conquistas
O React Native é um framework JavaScript criado para construir a interface do usuário em aplicativos móveis.
Componentes
Props
Variáveis
Navegação
APIs RESTfull
400 exercícios
16 conteúdos
Avançado