Junior — Middle
Explique o conceito de fluxos de dados na programação e sua aplicação.
sobes.tech IA
Resposta da IA
Fluxos de dados (streams) em programação são sequências de dados que chegam de forma assíncrona ao longo do tempo. Eles permitem processar eventos ou dados à medida que aparecem, sem bloquear o fluxo principal de execução.
No Flutter, os fluxos de dados são frequentemente usados para trabalhar com eventos assíncronos, como entrada do usuário, obtenção de dados da rede ou atualizações de estado.
Exemplo de uso de Stream em Dart:
Stream<int> countStream(int max) async* {
for (int i = 1; i <= max; i++) {
await Future.delayed(Duration(seconds: 1));
yield i; // envia um novo valor para o fluxo
}
}
void main() {
var stream = countStream(3);
stream.listen((value) {
print('Valor recebido: $value');
});
}
Aqui, a cada segundo, um novo número é enviado para o fluxo, e o ouvinte recebe esses valores à medida que aparecem. Essa abordagem é útil para programação reativa e processamento de eventos em tempo real.