São 4 horas por sábado. Não dá pra gastar 40 minutos instalando Docker na sala. Tudo abaixo é feito em casa, no seu notebook — e cada item fica marcado neste navegador.
Cada capítulo deste site tem três zonas. Se você chegar no sábado sem a primeira, vai assistir os outros trabalharem.
record e sealed existem desde o 17, mas o
switch com pattern matching (que usamos no Sáb 1) só é final no 21. Se você já tem 21+, só confira a versão.curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk install java 21.0.4-tem # Temurin 21 (Eclipse Adoptium)
sdk default java 21.0.4-temAlternativa: brew install --cask temurin@21. Se listar versões com sdk list java, escolha qualquer 21.x-tem.
curl -s "https://get.sdkman.io" | bash source "$HOME/.sdkman/bin/sdkman-init.sh" sdk install java 21.0.4-tem sdk default java 21.0.4-tem
Ubuntu/Debian também aceita sudo apt install openjdk-21-jdk.
winget install EclipseAdoptium.Temurin.21.JDK
Feche e reabra o terminal depois — o PATH só atualiza em sessão nova.
java -version
openjdk version "21.0.4" 2024-07-16 LTS ← o número que importa é o 2117 ou 11 mesmo depois de instalar. É o JAVA_HOME antigo ou outro Java na frente no PATH. No SDKMAN, sdk default java 21.0.4-tem resolve; no Windows, confira Variáveis de ambiente → JAVA_HOME.Baixe o IntelliJ IDEA Community (grátis) em jetbrains.com/idea. No primeiro
projeto, confira que o SDK aponta pro Java 21: File → Project Structure → SDK.
-> como uma seta única. É só visual: a seta do switch e das lambdas são dois
caracteres, - e >. Se isso te incomoda, desligue em Settings → Editor → Font → Enable ligatures.pedidos, que evolui até o capstone. A tarefa de casa
é sempre um commit. E o agente trabalha melhor num diretório versionado (ele lê o git diff).git --version
git version 2.4x.x
git config --global user.name "Seu Nome"
git config --global user.email "voce@exemplo.com"Instale o Docker Desktop (docker.com). No Windows ele exige WSL 2 — o instalador
avisa. Depois, salve este arquivo numa pasta infra/ (vai ser a mesma do seu repositório):
services: postgres: image: postgres:16 environment: POSTGRES_USER: pedidos POSTGRES_PASSWORD: pedidos POSTGRES_DB: pedidos ports: ["5432:5432"] rabbitmq: image: rabbitmq:3-management # painel web em localhost:15672 (guest/guest) ports: ["5672:5672", "15672:15672"] kafka: image: apache/kafka:3.9.0 # nó único KRaft, já ouve em localhost:9092 ports: ["9092:9092"]
cd infra docker compose up -d docker compose ps NAME STATUS PORTS infra-postgres-1 Up 10 seconds 0.0.0.0:5432->5432/tcp infra-rabbitmq-1 Up 10 seconds 0.0.0.0:5672->5672/tcp, 0.0.0.0:15672->15672/tcp infra-kafka-1 Up 10 seconds 0.0.0.0:9092->9092/tcp
Abra http://localhost:15672 (guest / guest): é o painel do RabbitMQ. Se abriu, o Docker está saudável. Depois, docker compose down pra desligar.
port is already allocated na 5432. Você tem um Postgres instalado
direto na máquina. Ou pare esse serviço, ou troque a porta do compose pra "5433:5432" (e lembre disso na URL do Spring).Opção A — Claude Code. Use sua conta Claude compatível e faça a instalação:
curl -fsSL https://claude.ai/install.sh | bash
irm https://claude.ai/install.ps1 | iex
npm install -g @anthropic-ai/claude-code
Primeiro contato. Abra uma pasta hello-agente no IntelliJ, abra o Terminal da IDE e chame o agente:
mkdir hello-agente && cd hello-agente claude # na primeira vez ele abre o navegador pra você logar com a conta do Claude Pro # dentro do Claude Code, o comando /login refaz isso se precisar
Agora dê a primeira ordem — e repare que ela já tem cara de spec (o que, e o que não):
Esperado: ele cria um arquivo e para. Se ele criou pom.xml, README e três classes, você acabou de ver o
primeiro motivo do curso existir: o agente faz mais do que pediram quando a spec deixa. Já dá pra treinar a revisão.
npm install -g @openai/codex, inicie com codex e autentique. Ele usa AGENTS.md; os prompts do Cap 1 já estão preparados.curl -fsSL https://antigravity.google/cli/install.sh | bash; inicie com agy. Ele também reconhece AGENTS.md no workspace.Na mesma pasta hello-agente, peça ao agente um projeto mínimo que use tudo o que você instalou:
Esperado: BUILD SUCCESS e Tests run: 1, Failures: 0. Se o Maven wrapper baixou dependências, sua rede e seu Java estão ok. Abra a pasta na IDE e veja o teste verde lá também.
aws.amazon.com (pede cartão; a cobrança do curso, se houver, é de centavos).dev-curso com AdministratorAccess (é conta de estudo) e gere access keys pra CLI.aws configure # cola as access keys; região: us-east-1 aws sts get-caller-identity # tem que devolver o ARN do usuário dev-curso sam --version SAM CLI, version 1.1xx.x
Leia o Capítulo 0 (como um agente pensa) e a zona 📖 do Sábado 1 antes do Sábado 1.
☕ Ir para o Sábado 01 →