🧠 Quiz: Cap 13 — Conectando ao Mundo (PokeAPI)

📖 Ver Cap 13

Teste se você entendeu os conceitos do Cap 13 antes de seguir para o Cap 14. Pense na sua resposta antes de abrir o gabarito!


1. Na analogia do capítulo, o que é uma API?

A) Um arquivo de imagem do app B) Um “garçom” que leva seu pedido até o servidor e traz a resposta de volta C) Um tipo de banco de dados local D) O nome da tela principal do app


2. O que é JSON, segundo a analogia da “bandeja”?

A) Uma linguagem de programação B) O formato de texto em que os dados chegam do servidor C) Um tipo de botão do Compose D) Um aplicativo de design


3. Para que serve um Mock (como o Beeceptor) nesta fase do projeto?

A) Para deixar o app mais bonito B) Para simular um servidor “de mentirinha”, testando o app antes de usar a PokeAPI real C) Para apagar dados do celular D) Para compilar o projeto mais rápido


4. Qual é o papel do Repository (“Estoque Central”)?

A) Desenhar a interface da tela B) Decidir de onde os dados vêm (API real, Mock, ou banco Room) e repassar ao ViewModel C) Armazenar as cores do tema do app D) Substituir o NavController


5. Por que carregarHeroi() usa viewModelScope.launch para chamar repository.buscarHeroi()?

A) Porque buscarHeroi() é uma função suspend, que precisa rodar em uma corrotina para não travar a tela B) Porque launch é obrigatório em toda função do Kotlin C) Porque viewModelScope apaga o resultado depois de usar D) Porque sem launch o app não compila, mesmo sem chamadas de rede


🔑 Ver Gabarito 1. **B** — a API funciona como um garçom: leva o pedido (requisição) ao servidor e traz a resposta (dados). 2. **B** — JSON é o formato de texto ("bandeja") em que os dados trafegam entre servidor e app. 3. **B** — o Mock simula respostas de um servidor real, permitindo testar o app sem depender da PokeAPI estar disponível. 4. **B** — o Repository é o "Estoque Central": o ViewModel pede a ele, e ele decide a fonte real dos dados. 5. **A** — `viewModelScope.launch` abre uma corrotina, necessária para chamar funções `suspend` (como `buscarHeroi()`) sem congelar a interface.

⬅️ Voltar para Quizzes