Junior — Middle
Kun je het concept van asynchrone programmering uitleggen en hoe het verschilt van de synchrone aanpak?
sobes.tech AI
Antwoord van AI
Asynchrone programmeren maakt het mogelijk om bewerkingen uit te voeren die tijd kosten (bijvoorbeeld gegevens laden uit het netwerk) zonder de hoofduitvoeringsdraad van het programma te blokkeren. Dit betekent dat de applicatie kan blijven werken en reageren op gebruikersacties terwijl een langdurige taak wordt uitgevoerd.
In de synchronische aanpak wordt de code sequentieel uitgevoerd: het programma wacht tot één operatie is voltooid voordat het naar de volgende gaat, wat kan leiden tot vastlopen van de interface.
In Flutter worden voor asynchrone programmering de sleutelwoorden async en await gebruikt:
Future<String> fetchData() async {
// simulatie van vertraging
await Future.delayed(Duration(seconds: 2));
return 'Gegevens geladen';
}
void main() async {
print('Begin met laden');
String data = await fetchData();
print(data);
}
Hier wordt fetchData asynchroon uitgevoerd, zonder de hoofdthread te blokkeren.