🚀 Capítulo 14: Diagrama de Máquina de Estados (Tema: Tron)
NOTE
Este capítulo utiliza a temática de Tron para explicar os Estados. Um programa na Grade pode mudar de comportamento dependendo do seu estado atual!
1. 🎯 Objetivo da Aula
Compreender o conceito de Diagrama de Máquina de Estados e como ele modela o ciclo de vida e as mudanças de estado de um objeto.
2. 🏢 O Cenário Prático (Seu Desafio)
Você está monitorando um Programa de Combate na Grade do Tron. Este programa não faz tudo ao mesmo tempo. Ele passa por diferentes Estados: ele começa como Inativo, passa para Rodando quando executado, pode ser Pausado e, eventualmente, é Destruído. Seu desafio é modelar esse ciclo de vida no Draw.io!
3. 🧠 Fundamentos: A Teoria Traduzida
O Diagrama de Máquina de Estados (ou Diagrama de Estados) mostra os diferentes estados pelos quais um objeto passa durante sua existência em resposta a eventos.
🔴 Elementos Principais:
- Estado Inicial: Uma bolinha preta preenchida (onde tudo começa).
- Estado: Um retângulo com cantos arredondados contendo o nome do estado (ex:
Rodando). - Transição: Uma seta ligando um estado a outro.
- Evento/Gatilho: O texto sobre a seta que diz o que fez o estado mudar (ex:
ligar()). - Estado Final: Um círculo preto com uma borda ao redor (o fim da linha).
4. 📖 Exemplo Guiado: Ciclo do Programa Tron
- Comece no Estado Inicial.
- Seta com o evento
executar()para o estadoRodando. - Do estado
Rodando, podemos ter duas setas:- Evento
pausar()→ leva para o estadoPausado. - Evento
parar()→ leva para o Estado Final.
- Evento
- Do estado
Pausado, o eventoretomar()leva de volta paraRodando.
5. 🛠️ Prática Obrigatória 1: Estados do Programa
Desenhe o diagrama de estados do exemplo guiado no Draw.io.
- Use os símbolos corretos de início, fim e estados.
- Exporte a imagem.
6. 🛠️ Prática Obrigatória 2: Estado vs Ação
Qual é a diferença entre uma Ação (do Diagrama de Atividades) e um Estado? (Dica: Pense em quanto tempo o objeto fica em cada um. Ação é passageira, Estado é duradouro).
7. 📤 Instruções de Entrega (GitHub Desktop + Microsoft Teams)
- Faça o Commit: No GitHub Desktop, digite a mensagem (ex:
Finaliza Capítulo 14 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_14_estados.md
│ └── codigos/
│ └── cap14/
│ └── estados_programa.png9. 💡 Checkpoint de Lógica
Um objeto pode estar em dois estados diferentes ao mesmo tempo neste tipo de diagrama básico?
10. 🔥 Desafio de Fixação
Pesquise o que são os Estados Compostos ou Sub-estados no Diagrama de Estados.
11. 🔑 Gabarito de Código/Fórmulas
Resposta da Prática 2: Uma Ação é algo que o sistema FAZ (processamento rápido, ex: Calcular Média). Um Estado é uma condição em que o objeto SE ENCONTRA por um tempo (ex: Aluno Aprovado, Porta Trancada).