Aula 07 - Repositories e Banco de Dados (PostgreSQL) 🗄️
Objetivo
Objetivo: Entender a camada de persistência, aprender os fundamentos de Bancos de Dados Relacionais (SQL) e como o padrão Repository isola o acesso aos dados da lógica de negócio.
1. Onde os dados moram? 🏠
Até agora, se reiniciarmos nosso servidor, todos os dados (usuários, produtos, etc) somem. Para que a informação sobreviva, precisamos de um Banco de Dados.
Neste curso, usaremos o PostgreSQL, um dos bancos relacionais mais robustos e utilizados no mundo backend.
2. Bancos Relacionais vs SQL 📊
Um banco relacional organiza os dados em Tabelas (linhas e colunas), como uma planilha de Excel gigante, mas com "superpoderes" de relacionamento.
O SQL (Structured Query Language) é a linguagem que usamos para falar com o banco.
Comandos Essenciais (CRUD):
- CREATE:
INSERT INTO tabela (campos) VALUES (valores); - READ:
SELECT * FROM tabela WHERE condicao; - UPDATE:
UPDATE tabela SET campo = valor WHERE id = 1; - DELETE:
DELETE FROM tabela WHERE id = 1;
3. Relacionamentos (O "Relacional") 🔗
O grande poder do SQL é ligar tabelas: * 1:N (Um para Muitos): Um Usuário tem muitos Pedidos. * N:N (Muitos para Muitos): Um Estudante está em muitos Cursos, e um Curso tem muitos Estudantes.
4. O# Aula 07 - Planilhas Eletrônicas IV: Gráficos 📉
Números contam histórias, mas os Gráficos as tornam visíveis. Hoje aprenderemos a transformar tabelas em relatórios visuais profissionais.
💡 Por que usar Gráficos?
Um gráfico permite identificar tendências, comparar valores e entender proporções de forma muito mais rápida que lendo uma tabela cheia de números.
A Regra Visual
Se você quer mostrar crescimento no tempo, use Linhas. Se quer comparar itens, use Colunas. Se quer mostrar partes de um todo, use Pizza.
📊 Principais Tipos de Gráficos
| Tipo | Melhor uso | Exemplo |
|---|---|---|
| Colunas / Barras | Comparação entre categorias. | Vendas por Vendedor. |
| Linhas | Evolução ao longo do tempo. | Aumento da temperatura global. |
| Pizza | Proporções de um total (100%). | Gastos por Categoria. |
| Área | Similar à linha, mas destaca o volume. | Consumo de energia mensal. |
🎨 Anatomia de um Gráfico
graph TD
Chart["📊 Gráfico"] --> Title["📝 Título (O que é isso?)"]
Chart --> AxisX["↔️ Eixo X (Categorias/Meses)"]
Chart --> AxisY["↕️ Eixo Y (Valores/R$)"]
Chart --> Legend["🎨 Legenda (O que cada cor significa?)"]
Chart --> Labels["🔢 Rótulos de Dados (Valores exatos)"]
💻 Mão na Massa: Criando um Gráfico de Colunas
📝 Exercícios de Fixação
- Escolha: Se você quer mostrar a porcentagem de votos de 3 candidatos, qual o gráfico ideal?
- Análise: O que acontece com o gráfico se você mudar algum número na tabela de origem?
- Estética: Por que não devemos usar 20 fatias diferentes em um gráfico de pizza?
🚀 Mini-Projeto: Gráfico de Desempenho Pessoal
Objetivo: Criar um gráfico que mostre sua evolução ou interesses.
- Crie uma tabela simples:
AtividadeeHoras por Semana. - Ex: (Estudos: 15h, Lazer: 20h, Exercícios: 5h, Sono: 56h).
- Gere um Gráfico de Pizza para ver como você distribui seu tempo.
- Gere um Gráfico de Barras para comparar as atividades.
- Requisito: Adicione títulos claros e ative os "Rótulos de Dados" para mostrar as horas em cima das fatias/barras.
- Salve como
projeto_07_meu_tempo.xlsx. os](./aula-08.md) ✅