Future Flutter

Matheus Mota
Business Applications ITA
2 min readJul 12, 2021

No flutter, o Future é um objeto que que representa um atrado. Ele é muito usado para a contruções de funções assíncronas e muitas vezes sempre vem acompanhado de métodos para detectar potenciais erros no código.

Os receptores de um futuro podem registrar retornos de chamada que tratam do valor ou erro, uma vez que ele está disponível.

Um exemplo disso seria:

Nesse exemplo, veja que na construção do Future na linha 1 foi colocado <int>. Essa representação é para indicar que o valor esperado da variável é do formato inteiro. Com isso, é usado o then para indicar uma ação no futuro que vai ocorrer caso não tenha problemas e depois ele manda para a função handleValue para tratar a variável value.

Caso ocorra algum problema, a ação tomada é de erro. Isso é escrito na forma de catchError, no qual ele pega o erro que ocorreu e envia para uma função handleError que fará o tratamento da variável error.

Ao registrar retornos de chamada, geralmente é mais legível registrar os dois retornos de chamada separadamente, primeiro usando then com um argumento (o manipulador de valor) e usando um segundo catchError para lidar com erros. Cada um deles encaminhará o resultado que eles não controlam para seus sucessores e, juntos, eles lidam com o valor e o resultado do erro. Ele também tem o benefício adicional de erros de tratamento catchError no retorno de chamada do then value. O uso de manipuladores sequenciais em vez de paralelos geralmente leva a um código mais fácil de raciocinar. Ele também torna o código assíncrono muito semelhante ao código síncrono.

Para mais informações, recomendo a leitura do link. Nele tem mais detalhes que a própria documentação explica.

Se tiverem alguma dúvida, podem mandar por aqui ou enviar por mensagem.

--

--