Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Porque usar dispatchqueue e não o async await?

Olá, eu vi que nos outros cursos está se usando async await que eu entendi que substitui o uso do completion e do dispatchqueue, porque nesse curso que parece ser mais recente voltou a usar closure?

2 respostas
solução!

Olá Gisele! Como vai?

Entendi sua dúvida sobre a escolha entre DispatchQueue e async/await. A decisão de usar um ou outro pode depender de vários fatores, incluindo a compatibilidade com versões anteriores do Swift e o design do curso em questão.

O async/await é uma maneira moderna e mais legível de lidar com operações assíncronas introduzida no Swift 5.5. Ele simplifica o código, tornando-o mais linear e fácil de entender, eliminando a necessidade de closures complexas e o uso explícito de DispatchQueue para gerenciar threads.

Por outro lado, o uso de DispatchQueue ainda é muito comum, especialmente em projetos que precisam ser compatíveis com versões mais antigas do Swift ou que seguem um padrão de design específico, como o uso de delegates e protocolos, que é o foco do curso que você está fazendo.

No contexto do curso, o uso de DispatchQueue.main.async é necessário para garantir que as atualizações de interface do usuário ocorram na thread principal, o que é uma prática comum em desenvolvimento iOS. Isso não impede o uso de async/await, mas aprender padrões de design, como o uso de delegates, é fundamental para entender a arquitetura de aplicativos iOS.

É sempre bom estar familiarizada com ambos os métodos, pois cada um tem suas vantagens e pode ser mais adequado dependendo do contexto do projeto em que você está trabalhando.

Espero ter ajudado!

Siga firme nos seus estudos e conte com o fórum sempre que precisar!

Abraços :)

Caso este post tenha lhe ajudado, por favor, marcar como solucionado

Obrigada. Delegate não tem no SwiftUI, né?