1
resposta

Dúvida sobre o retorno do método "delete"

Vi que a função retorna a chamada do bancoDeDados.delete(...), mas o método de delete não foi especificado o tipo de retorno, nesse caso não seria void? Como é possível retornar a chamada da função do banco sem especificar o retorno ? Tentei colocar o void pra fazer o teste e fala que é do tipo Future.

1 resposta

Ahhhh! Otima pergunta!

No caso estamos no mundo do Assincronismo (SPOILER: curso novinho no forno sobre esse tema viu ), onde o retorno de uma função demora um tempo para ser entregue.

Acontece que quando nos comunicamos com o banco de dados ele pode acabar engasgando os processos na fila da VM do Dart, e para isso o Dart possui um Objeto chamado FUTURE que processa as informações de forma assincrona.

O Dart autocompleta pra gente o tipo da função, ele avalia e nomeia sem a gente indicar. no caso da função delete ela é do tipo Future e eu não coloquei no código justamente para não confundir a cabeça da galera! Mas caso você queira aprender mais:

https://www.treinaweb.com.br/blog/como-funciona-o-async-await-e-future-no-flutter ou https://dart.dev/codelabs/async-await