Dart Academy · Leçon

Fonctions anonymes et fermetures

Capturer des variables dans des fonctions intégrées

Leçon 2 sur 413 étapes

Fonctions anonymes et fermetures est une leçon Dart Academy gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Dart Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Dart Academy comprend 4 leçons au total.

Des fonctions sans nom

Parfois, vous avez besoin d’une fonction une seule fois, et jamais plus. Une fonction anonyme n’a pas de nom et s’écrit directement là où vous l’utilisez. ✨

La forme de base

Une fonction anonyme se compose simplement de paramètres et d’un corps, sans nom devant. Vous pouvez la stocker dans une variable.

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

Appeler la fonction stockée

Une fois stockée, vous l’appelez par l’intermédiaire de la variable, comme n’importe quelle fonction nommée, en utilisant des parenthèses.

greet('Ada');

En transmettre une directement

Le plus souvent, vous transmettez directement une fonction anonyme à une méthode. Ici, forEach l’appelle pour chaque élément.

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

Fonctions anonymes fléchées

Pour un corps constitué d’une seule expression, combinez les fonctions anonymes avec la flèche afin de garder un code concis.

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

Qu’est-ce qu’une fermeture ?

Une fermeture est une fonction qui mémorise les variables de l’endroit où elle a été créée, même après la fin de cette portée externe.

Capturer une variable

La fonction interne ci-dessous capture étape. Elle continue d’utiliser cette valeur chaque fois que vous appelez ultérieurement la fonction renvoyée.

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

Chaque fermeture est indépendante

Appelez la fabrique deux fois : chaque fermeture renvoyée conserve une valeur capturée distincte. Elles n’interfèrent pas entre elles.

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

Les fermetures conservent un état

Une variable capturée peut changer entre deux appels, ce qui permet à une fermeture de mémoriser une progression, comme un petit compteur.

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

Pourquoi est-ce important ?

Les fonctions de rappel, les gestionnaires d’événements et les méthodes de listes reposent tous sur les fermetures. Elles vous permettent de regrouper le comportement avec les données dont il a besoin.

Gardez-les petites

Les fermetures intégrées sont particulièrement efficaces lorsqu’elles restent courtes. Si l’une d’elles devient complexe, donnez-lui un vrai nom afin que les autres puissent la lire facilement.

Vérification rapide

Qu’est-ce qui fait d’une fonction une fermeture ?

Récapitulatif

Vous avez découvert les fonctions anonymes pour les usages ponctuels, ainsi que les fermetures qui capturent les variables environnantes pour conserver leur propre état. 🎯

Gratuit pour commencer

Apprends Dart avec un tuteur IA — gratuit

Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.

Cours
30
Leçons
120

Questions Fréquemment Posées

La leçon « Fonctions anonymes et fermetures » est-elle gratuite ?

Oui — le texte complet de « Fonctions anonymes et fermetures » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Dart Academy, passe à CoddyKit PRO. Le cours Dart Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Fonctions anonymes et fermetures » ?

Capturer des variables dans des fonctions intégrées Tu pratiques Dart Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Dart Academy ?

Aucune expérience préalable n'est requise. Dart Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.

Combien de temps prend la leçon « Fonctions anonymes et fermetures » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Dart Academy ?

Oui. Chaque leçon Dart Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Syntaxe fléchée pour les fonctions sur une ligne
  2. Fonctions anonymes et fermetures
  3. Types pouvant être nuls et point d’interrogation
  4. Opérateurs sensibles à null : ?., ?? et !
← Retour à Dart Academy