Exercícios

Gerenciamento de Estado e Fluxo de Dados no SwiftUI

Avalie seus conhecimentos sobre gerenciamento de estado e fluxo de dados no SwiftUI. Este questionário aborda o uso de @State para estados locais, @Binding para comunicação entre Views, @StateObject e @ObservedObject no padrão ObservableObject, além de @EnvironmentObject e suas regras de herança. Explore também o sistema Observation moderno, incluindo modelos @Observable, @Bindable e a preservação de instâncias criadas pela própria View. As questões analisam fonte única de verdade, valores derivados, identidade de Views com .id(), identificação correta em ForEach para manter estados locais e o ciclo de vida de tarefas assíncronas iniciadas com .task. Ideal para praticar conceitos essenciais na criação de interfaces SwiftUI previsíveis, reativas e fáceis de manter.

Responda às questões abaixo e confira a explicação de cada resposta.

0/15 respondidas

  1. 1

    Qual propriedade deve ser usada para armazenar um valor simples que pertence exclusivamente a uma View e pode mudar durante sua exibição?

  2. 2

    No diagrama, o componente filho precisa alterar a contagem armazenada pelo componente pai. Qual wrapper deve ser utilizado na propriedade do filho?

    Questão 2
  3. 3

    O que normalmente ocorre quando uma propriedade marcada com @State é modificada?

  4. 4

    Em uma View com @State private var username = "", o que a expressão $username fornece?

  5. 5

    No modelo baseado em ObservableObject, qual wrapper é apropriado quando uma View cria e deve preservar a instância do seu próprio objeto observável?

  6. 6

    No modelo baseado em ObservableObject, uma View recebe do pai uma instância já criada e apenas precisa observar suas mudanças. Qual wrapper é o mais adequado?

  7. 7

    O que acontece quando uma View tenta acessar um @EnvironmentObject que não foi fornecido por nenhum ancestral?

  8. 8

    No diagrama, a View raiz define o tema como Light, mas Dashboard redefine o mesmo valor como Dark. Qual tema será lido por Profile, que é descendente de Dashboard?

    Questão 8
  9. 9

    Uma tela armazena preço e quantidade como estado. O valor total é sempre preço multiplicado pela quantidade. Qual abordagem reduz o risco de inconsistência?

  10. 10

    Com o sistema Observation, uma View filha recebe um objeto @Observable e precisa criar bindings como $model.name. Qual wrapper deve usar na propriedade recebida?

  11. 11

    A interface ilustrada possui um TextField e uma prévia que devem compartilhar um nome cuja fonte de verdade pertence à própria tela. Qual declaração é apropriada nessa tela?

    Questão 11
  12. 12

    No sistema Observation introduzido nas versões modernas do SwiftUI, como uma View pode manter um modelo @Observable criado por ela?

  13. 13

    Uma View com estado local recebe o modificador .id(userID). Por que esse estado pode ser reiniciado quando userID muda?

  14. 14

    A lista ilustrada pode ser reordenada, mas cada linha deve preservar corretamente seu Toggle local. Como os elementos de ForEach devem ser identificados?

    Questão 14
  15. 15

    A linha do tempo mostra uma View aparecendo, iniciando uma operação assíncrona com .task e depois desaparecendo antes da conclusão. Qual comportamento o SwiftUI oferece?

    Questão 15

Baixe o Aplicativo agora para ter acesso a + de 5000 cursos gratuitos, exercícios, certificado e muito conteúdo sem pagar nada!

  • Cursos online 100% gratuitos do início ao fim

    Milhares de cursos online em vídeo, ebooks e áudiobooks.

  • Mais de 60 mil exercícios gratuitos

    Para testar seus conhecimentos no decorrer dos cursos online

  • Certificado Digital gratuito válido em todo o Brasil

    Gerado diretamente na galeria de fotos do seu celular e enviado ao seu e-mail

Aplicativo Cursa na tela de ebook, na tela de curso em vídeo e na tela de exercícios do curso, mais o certificado de conclusão de curso