Sobes.tech
Junior — Middle

Jaka jest główna funkcja strumieni danych (Streams) w programowaniu?

sobes.tech AI

Odpowiedź od AI

Strumienie danych (Streams) w programowaniu, zwłaszcza w Flutterze, służą do asynchronicznego przesyłania sekwencji danych w czasie. Pozwalają na odbieranie i przetwarzanie danych w miarę ich pojawiania się, co jest wygodne przy obsłudze zdarzeń, wejścia użytkownika, żądań sieciowych i innych źródeł, gdzie dane nie docierają od razu, lecz stopniowo.

Przykład użycia Stream w Dart:

Stream<int> countStream(int to) async* {
  for (int i = 1; i <= to; i++) {
    await Future.delayed(Duration(seconds: 1));
    yield i; // przekazuje kolejną wartość do strumienia
  }
}

void main() {
  countStream(3).listen((value) {
    print('Otrzymana wartość: $value');
  });
}

Tutaj strumień kolejno emituje liczby z opóźnieniem, a słuchacz odbiera je w miarę pojawiania się.