Dart Academy · Les

Anonieme functies en closures

Variabelen vastleggen in inlinefuncties

Les 2 van 413 stappen

Anonieme functies en closures 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.

Functies zonder namen

Soms heb je een functie één keer nodig en daarna nooit meer. Een anonieme functie heeft geen naam en wordt precies op de plek geschreven waar je haar gebruikt. ✨

De basisvorm

Een anonieme functie bestaat alleen uit parameters en een body, zonder naam ervoor. Je kunt haar in een variabele opslaan.

var greet = (String n) {
  print('Hi ' + n);
};

De opgeslagen functie aanroepen

Nadat je de functie hebt opgeslagen, roep je haar via de variabele aan, net als elke functie met een naam, met haakjes.

greet('Ada');

Eén functie inline doorgeven

Meestal geef je een anonieme functie rechtstreeks door aan een methode. Hier roept forEach haar aan voor elk item.

[1, 2, 3].forEach((n) {
  print(n * 2);
});

Anonieme pijlfuncties

Combineer anonieme functies met de pijl als de body uit één expressie bestaat, zodat alles compact blijft.

var doubled = [1, 2, 3].map((n) => n * 2);

Wat is een closure?

Een closure is een functie die variabelen onthoudt uit de omgeving waarin ze is gemaakt, zelfs nadat die buitenste scope is beëindigd.

Een variabele vastleggen

De innerlijke functie hieronder legt step vast. Ze blijft die waarde gebruiken telkens wanneer je de geretourneerde functie later aanroept.

Function adder(int step) {
  return (int x) => x + step;
}

Elke closure staat op zichzelf

Roep de fabriek twee keer aan. Elke geretourneerde closure bewaart dan een afzonderlijke vastgelegde waarde. Ze beïnvloeden elkaar niet.

var add5 = adder(5);
var add10 = adder(10);

Closures bewaren status

Een vastgelegde variabele kan tussen aanroepen veranderen, waardoor een closure voortgang kan onthouden, zoals een kleine teller.

int count = 0;
var tick = () => ++count;

Waarom dit belangrijk is

Callbacks, gebeurtenisafhandelaars en lijstmethoden steunen allemaal op closures. Ze laten je gedrag bundelen met de gegevens die het nodig heeft.

Houd ze klein

Inline-closures zijn ideaal als ze kort blijven. Als er één ingewikkeld wordt, geef haar dan een echte naam, zodat anderen haar gemakkelijk kunnen lezen.

Snelle controle

Waardoor is een functie een closure?

Samenvatting

Je hebt anonieme functies voor eenmalig gebruik ontmoet, evenals closures die omliggende variabelen vastleggen om hun eigen status bij te houden. 🎯

Gratis beginnen

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 “Anonieme functies en closures” gratis?

Ja — de volledige tekst van “Anonieme functies en closures” 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 “Anonieme functies en closures”?

Variabelen vastleggen in inlinefuncties 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 “Anonieme functies en closures”?

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

  1. Pijlsyntaxis voor functies op één regel
  2. Anonieme functies en closures
  3. Nullable typen en het vraagteken
  4. Null-aware-operatoren: ?., ?? en !
← Terug naar Dart Academy