🚀 Capítulo 01: Introdução à UML (Tema: Star Wars)
NOTE
Este capítulo utiliza a temática de Star Wars para explicar a UML. Para construir a Estrela da Morte ou planejar o ataque da Aliança, precisamos de plantas visuais que todos entendam!
1. 🎯 Objetivo da Aula
Compreender o que é a UML (Unified Modeling Language), sua importância no desenvolvimento de software e as duas grandes categorias de diagramas.
2. 🏢 O Cenário Prático (Seu Desafio)
Você é um engenheiro da Aliança Rebelde. Os espiões conseguiram os planos técnicos da nova arma do Império. No entanto, os planos estão cheios de códigos complexos e linhas de texto difíceis de entender. Sua missão é usar a UML para criar diagramas visuais que permitam aos pilotos e generais entenderem a estrutura da arma e como atacá-la!
3. 🧠 Fundamentos: A Teoria Traduzida
A UML (Unified Modeling Language) é uma linguagem gráfica padronizada para visualizar, especificar, construir e documentar os artefatos de um sistema de software.
Pense nela como a Planta Baixa de uma nave espacial:
- Um engenheiro mecânico precisa ver a estrutura dos motores.
- Um piloto precisa ver o painel de controle.
- Um eletricista precisa ver a fiação.
- A UML oferece diferentes diagramas para cada uma dessas visões!
Para que serve?
- Visualizar: Ver o sistema antes de construir.
- Comunicar: Uma linguagem comum entre desenvolvedores e clientes.
- Documentar: Guardar o mapa do sistema para o futuro.
As Duas Grandes Categorias de Diagramas:
- Diagramas Estruturais: Mostram a estrutura estática (O que o sistema É). Como a carcaça da Estrela da Morte.
- Diagramas Comportamentais: Mostram a dinâmica e interações (O que o sistema FAZ). Como o fluxo de energia do reator até o superlaser.
4. 📖 Exemplo Guiado: O Diagrama de Classes
O diagrama mais famoso da UML é o de Classes. Ele mostra as “coisas” do sistema e como elas se relacionam.
classDiagram class Nave { -nome: string -modelo: string +atacar() } class Piloto { -nome: string -raca: string +pilotar() } Piloto "1" -- "1..*" Nave : pilota
Este diagrama nos diz que um Piloto pode pilotar uma ou mais Naves.
5. 🛠️ Prática Obrigatória 1: Identificando Categorias
Com base no que você aprendeu, classifique os seguintes diagramas como Estrutural ou Comportamental:
- Um diagrama que mostra as pastas e arquivos do sistema.
- Um diagrama que mostra o passo a passo de como fazer um Pix.
- Um diagrama que mostra as tabelas do banco de dados.
6. 🛠️ Prática Obrigatória 2: Criando sua Primeira Classe
Imagine um sistema para gerenciar os Cavaleiros Jedi.
- Desenhe (ou digite em formato de texto) uma classe chamada
Jedi. - Adicione 2 atributos (características, ex:
nome) e 2 métodos (ações, ex:usarForca()).
7. 📤 Instruções de Entrega (GitHub Desktop + Microsoft Teams)
- Faça o Commit: No GitHub Desktop, digite a mensagem (ex:
Finaliza Capítulo 01 UML) e clique em Commit to main. - Envie para a Nuvem (Push): Clique em Push origin.
8. 📂 Estrutura de Pastas
extra_guia_de_modelagem_uml/
├── capitulos/
│ ├── capitulo_01_introducao.md
│ └── codigos/
│ └── cap01/
│ └── jedi_classe.txt9. 💡 Checkpoint de Lógica
Por que desenhar diagramas UML pode economizar tempo e dinheiro em um projeto de software? (Dica: Pense no custo de mudar uma parede na planta vs mudar a parede depois de construída).
10. 🔥 Desafio de Fixação
Pesquise o nome de pelo menos 3 outros diagramas da UML além do Diagrama de Classes.
11. 🔑 Gabarito de Código/Fórmulas
Gabarito da Prática 1:
- Pastas e arquivos → Estrutural.
- Passo a passo do Pix → Comportamental.
- Tabelas do banco → Estrutural.