Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Les fonctionnalités de langage fonctionnel : les itérateurs et les closures

La conception de Rust s’est inspiree de nombreux langages et techniques existants, et une influence notable est la programmation fonctionnelle. Programmer dans un style fonctionnel consiste souvent à utiliser des fonctions comme des valeurs en les passant en arguments, en les retournant depuis d’autres fonctions, en les assignant à des variables pour une exécution ulterieure, et ainsi de suite.

Dans ce chapitre, nous ne debattrons pas de ce qu’est ou n’est pas la programmation fonctionnelle, mais nous aborderons plutot certaines fonctionnalités de Rust qui sont similaires a celles de nombreux langages souvent qualifies de fonctionnels.

Plus précisément, nous aborderons :

  • Les fermetures (closures), une construction semblable à une fonction que vous pouvez stocker dans une variable
  • Les itérateurs, un moyen de traiter une série d’éléments
  • Comment utiliser les fermetures et les itérateurs pour améliorer le projet d’E/S du chapitre 12
  • Les performances des fermetures et des itérateurs (attention spoiler : ils sont plus rapides que vous ne le pensez !)

Nous avons déjà couvert d’autres fonctionnalités de Rust, comme le filtrage par motif et les enums, qui sont également influencees par le style fonctionnel. Parce que maitriser les fermetures et les iterateurs est une part importante de l’écriture de code Rust rapide et idiomatique, nous consacrerons ce chapitre entier à ces sujets.