🚀 Capítulo 07: Criando o Primeiro Servidor (Tema: Homem de Ferro)

NOTE

Este capítulo utiliza a temática de Homem de Ferro para explicar o código. Vamos criar a primeira versão da JARVIS para responder aos nossos comandos!


1. 🎯 Objetivo da Aula

Criar o primeiro servidor web utilizando Node.js e o framework Express, entendendo a estrutura básica de escuta de portas.

2. 🏢 O Cenário Prático (Seu Desafio)

Tony Stark está trancado na caverna e precisa criar um sistema de comunicação para a armadura. Ele está usando peças velhas, mas tem um computador com Node.js instalado. Seu desafio é ajudá-lo a criar um servidor que fique “ouvindo” em uma porta e responda “Sistema JARVIS Online!” quando receber uma chamada!

3. 🧠 Fundamentos: A Teoria Traduzida

Para criar um servidor no mundo real, usamos linguagens de programação. Neste curso, usaremos Node.js (que permite rodar JavaScript no servidor) e o framework Express (que facilita a criação de rotas).

🏗️ Passos para criar um servidor:

  1. Importar o Express: Trazer a biblioteca para o código.
  2. Instanciar a aplicação: Criar o “objeto” do servidor.
  3. Definir uma Rota: Dizer o que fazer quando alguém acessar um endereço.
  4. Ouvir uma Porta: Dizer em qual “canal” o servidor deve ficar escutando.

4. 📖 Exemplo Guiado: O Código da JARVIS

Aqui está o código completo de um servidor em JavaScript (Node.js):

// 1. Importa o express
const express = require('express');
// 2. Instancia o servidor
const app = express();
const PORTA = 3000;
 
// 3. Define a rota raiz (/)
app.get('/', (req, res) => {
    res.send('Sistema JARVIS Online! Olá, Senhor Stark.');
});
 
// 4. Liga o servidor para ouvir na porta
app.listen(PORTA, () => {
    console.log(`JARVIS ouvindo na porta ${PORTA}`);
});

5. 🛠️ Prática Obrigatória 1: Criando a Rota de Status

Adicione uma nova rota ao código acima.

  • Quando o usuário acessar o endpoint /status, o servidor deve responder: "Armadura com 100% de energia.".
  • Escreva apenas o pedaço de código da nova rota.

6. 🛠️ Prática Obrigatória 2: O que é uma Porta?

No código, usamos a porta 3000. Explique com suas palavras o que é uma “Porta” de rede em um servidor. (Dica: Pense em canais de TV ou portas de um prédio).


7. 📤 Instruções de Entrega (GitHub Desktop + Microsoft Teams)

  1. Faça o Commit: No GitHub Desktop, digite a mensagem (ex: Finaliza Capítulo 07 Backend) e clique em Commit to main.
  2. Envie para a Nuvem (Push): Clique em Push origin.

8. 📂 Estrutura de Pastas

mod_07_backend_e_apis/
├── capitulos/
│   ├── capitulo_07_primeiro_servidor.md
│   └── codigos/
│       └── cap07/
│           └── server.js

9. 💡 Checkpoint de Lógica

O que acontece se tentarmos ligar dois servidores diferentes na mesma porta (ex: 3000) no mesmo computador ao mesmo tempo?

10. 🔥 Desafio de Fixação

Pesquise como instalar o pacote express usando o comando npm install.

11. 🔑 Gabarito de Código/Fórmulas

Gabarito da Prática 1:

app.get('/status', (req, res) => {
    res.send('Armadura com 100% de energia.');
});

Capitulo Anterior | Proximo Capitulo