Les fonctions comme valeurs de première classe
Transmettre et renvoyer des fonctions comme des données
Les fonctions comme valeurs de première classe est une leçon Dart Academy gratuite sur CoddyKit. Ceci est la leçon 4 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.
Les fonctions sont des valeurs
Dans Dart, une fonction est une valeur de première classe, tout comme un nombre ou une chaîne. Vous pouvez la stocker, la transmettre et la renvoyer. 🎁
Stocker une fonction
Affectez une fonction à une variable en utilisant son nom sans parenthèses. La variable pointe alors vers la fonction elle-même.
int triple(int x) => x * 3;
var f = triple;
f(4); // 12Le type de fonction
Toute fonction possède un type qui décrit ses entrées et sa sortie. Vous pouvez le nommer avec le mot-clé Function pour plus de clarté.
int Function(int) op = triple;Transmettre une fonction
Une fonction peut être un paramètre d'une autre fonction. La fonction qui la reçoit l'appelle plus tard, ce qui permet de personnaliser le comportement sans réécrire le code.
int apply(int x, int Function(int) fn) {
return fn(x);
}Fonctions d'ordre supérieur
Une fonction qui reçoit ou renvoie une autre fonction est une fonction d'ordre supérieur. Ces fonctions permettent de créer des briques flexibles et réutilisables.
apply(5, triple); // 15Les rappels en pratique
Transmettre une fonction pour qu'elle s'exécute plus tard s'appelle un rappel. Les méthodes de collections comme forEach reposent constamment sur ce modèle.
[1, 2, 3].forEach(print);Renvoyer une fonction
Une fonction peut créer une autre fonction et la renvoyer. La fonction renvoyée peut même mémoriser les valeurs de l'endroit où elle a été créée.
Function adder(int n) {
return (int x) => x + n;
}Utiliser la fonction renvoyée
Appelez la fonction créatrice, stockez son résultat, puis appelez ce résultat. Chaque fermeture conserve sa propre valeur capturée.
var add5 = adder(5);
add5(10); // 15Des fonctions dans des collections
Comme les fonctions sont des valeurs, vous pouvez en stocker plusieurs dans une liste ou une structure associative, puis en choisir une à exécuter au moment voulu.
var ops = [triple, add5];
ops[0](2); // 6Transformer avec des fonctions
Des méthodes comme map acceptent une fonction et l'appliquent à chaque élément. Une transformation devient ainsi une valeur réutilisable que vous pouvez transmettre.
[1, 2, 3].map(triple).toList(); // [3, 6, 9]Pourquoi est-ce important
Les fonctions de première classe vous permettent de personnaliser le comportement en transmettant de la logique plutôt que des indicateurs. Elles favorisent une composition claire dans Dart et Flutter. ✨
Vérification rapide
Voyons si le concept de fonctions de première classe est bien compris.
Récapitulatif
Vous savez maintenant stocker, transmettre et renvoyer des fonctions, ainsi que créer des assistants d'ordre supérieur. C'est la base du style fonctionnel dans Dart. 🎉
Questions Fréquemment Posées
La leçon « Les fonctions comme valeurs de première classe » est-elle gratuite ?
Oui — le texte complet de « Les fonctions comme valeurs de première classe » 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 « Les fonctions comme valeurs de première classe » ?
Transmettre et renvoyer des fonctions comme des donné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 4 sur 4.
Combien de temps prend la leçon « Les fonctions comme valeurs de première classe » ?
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
- Déclarer des fonctions et leurs types de retour
- Paramètres positionnels ou nommés
- Valeurs par défaut et required
- Les fonctions comme valeurs de première classe