🧠 Quiz: Cap 12 — Arquitetura de Jogo (MVVM)
Teste se você entendeu os conceitos do Cap 12 antes de seguir para o Cap 13. Pense na sua resposta antes de abrir o gabarito!
1. Na analogia do capítulo, qual é o papel da View?
A) Calcular a vida e os pontos do jogador B) Apenas desenhar na tela o que o “Garçom” (ViewModel) traz C) Guardar os dados no banco de dados D) Fazer requisições à internet
2. Qual é o papel do ViewModel (“o Garçom”)?
A) Desenhar os botões e textos na tela B) Fazer os cálculos e a lógica do jogo, avisando a tela quando o estado muda C) Definir as cores do tema do app D) Compilar o projeto
3. O que significa Encapsulamento, no exemplo private val _pontos = mutableStateOf(0) + val pontos: State<Int> = _pontos?
A) Os dois são públicos e qualquer tela pode alterá-los diretamente
B) _pontos é privado (só o ViewModel altera) e pontos é a versão pública, só para leitura pela tela
C) _pontos e pontos são a mesma coisa, sem diferença
D) State<Int> transforma o número em texto
4. Segundo o “Mapa das Pastas” do capítulo, onde devem ficar as classes ViewModel?
A) Em ui/screens/
B) Em ui/viewmodel/
C) Na raiz do projeto, junto com o MainActivity
D) Em uma pasta chamada models/
5. O que faz vm: PersonagemViewModel = viewModel() no parâmetro de ArenaScreen?
A) Cria/recupera uma instância do ViewModel ligada ao ciclo de vida da tela, como valor padrão do parâmetro B) Declara uma variável de texto C) Importa a biblioteca de navegação D) Apaga o ViewModel da memória imediatamente