Futures maken en awaiten
Future-waarden produceren en consumeren
Futures maken en awaiten is een gratis Dart Academy-les op CoddyKit. Dit is les 2 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Dart Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Dart Academy bevat in totaal 4 lessen.
Een belofte van een waarde
Een Future vertegenwoordigt een waarde die nog niet klaar is, maar later aankomt, zoals een bon die je inwisselt zodra je bestelling klaar is.
Future van een type
Een future heeft altijd het type van wat hij zal opleveren. Een Future<int> belooft een int zodra het asynchrone werk klaar is.
Future<int> fetchScore() async {
return 42;
}Een functie markeren als async
Voeg het sleutelwoord async toe en de functie retourneert automatisch een Future. De geretourneerde waarde wordt de waarde van de future zodra die is voltooid.
Future<String> greet() async {
return "hi";
}Op een resultaat wachten
Binnen een async-functie pauzeert await totdat de future is voltooid. Daarna krijg je de gewone, uitgepakte waarde.
final score = await fetchScore();
print(score); // 42await blokkeert niet
Terwijl een functie wacht met await, blijft de eventlus ander werk uitvoeren. await onderbreekt alleen deze functie, niet je hele programma.
Een vertraging simuleren
Gebruik Future.delayed om een vaste tijd te wachten voordat je een waarde produceert, ideaal om een trage netwerkoproep na te bootsen.
await Future.delayed(Duration(seconds: 1));
print("one second later");Een directe Future
Future.value verpakt een al beschikbare waarde in een future. Dat is handig wanneer een API een Future verwacht, maar je het antwoord al hebt.
Future<int> ready = Future.value(7);Koppelen met then
Voordat async/await bestond, gebruikte je then om een callback uit te voeren zodra de future was opgelost. Het is nog steeds handig voor korte ketens.
fetchScore().then((s) => print(s));await leest duidelijker
Vergeleken met geneste then-callbacks zorgt await ervoor dat asynchrone code van boven naar beneden leest als gewone synchrone stappen.
Retourneren vanuit async
Alles wat je retourneert vanuit een async-functie wordt de waarde van de future. Retourneer niets en je krijgt een Future<void>.
Alleen await in async
Je kunt await alleen gebruiken binnen een functie die als async is gemarkeerd. Gebruik buiten zo'n functie de Future via then.
Korte controle
Korte controle van het gedrag van await.
Samenvatting: futures
Je kunt nu futures maken met async, waarden opleveren door ze te retourneren en ze uitpakken met await. Asynchrone code leest net zo duidelijk als synchrone code. 🚀
Leer Dart met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 30
- Lessen
- 120
Veelgestelde vragen
Is de les “Futures maken en awaiten” gratis?
Ja — de volledige tekst van “Futures maken en awaiten” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Dart Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Dart Academy bevat in totaal 4 lessen.
Wat leer ik in “Futures maken en awaiten”?
Future-waarden produceren en consumeren Je oefent met Dart Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Dart Academy te beginnen?
Ervaring vooraf is niet nodig. Dart Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.
Hoe lang duurt de les “Futures maken en awaiten”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Dart Academy?
Ja. Elke les over Dart Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- De event loop en microtasks
- Futures maken en awaiten
- Foutafhandeling in async-code
- Future.wait en parallel werk