Sobes.tech
Junior — Middle

Care este rolul principal al obiectului Future în programarea asincronă?

sobes.tech AI

Răspuns de la AI

Obiectul Future în programarea asincronă reprezintă o promisiune (promise) de a obține rezultatul unei operațiuni în viitor. Este utilizat pentru a lucra cu operații care se execută asincron și se pot finaliza mai târziu — de exemplu, încărcarea datelor din rețea sau citirea unui fișier.

Rolul principal al Future este de a oferi un mecanism pentru urmărirea stării unei operații asincrone și obținerea rezultatului sau erorii acesteia atunci când se finalizează.

Exemplu de utilizare a Future în Flutter (Dart):

Future<String> fetchData() async {
  // simulare de întârziere
  await Future.delayed(Duration(seconds: 2));
  return 'Date încărcate';
}

void main() async {
  print('Începem încărcarea');
  String data = await fetchData();
  print(data);
}

Aici, fetchData returnează un Future care se va finaliza în 2 secunde cu rezultatul unui șir de caractere. Cheia este că Future permite lucrul cu rezultatul în mod asincron, fără a bloca firul principal.