Chapitre 09 - Higher order functions Flashcards

1
Q

Quelle est la particularité du traitement des fonctions en programmation fonctionnelle

A

En programmation fonctionnelle, on va traiter les fonctions comme des valeurs passable en paramètre, en retour de fonction, dans n’importe quelle structure de donnée

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Qu’est-ce qu’on appelle une higher-order functions

A

C’est une fonction qui utilise une fonction en paramètre ou qui retourne des fonctions

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

En quoi les higher order functions sont utiles

A

Elle permet d’ajouter des critères à par exemple une recherche en donnant la méthode qui fait le calcul de l’égalité

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Quelle est la manière usuelle de faire des fonctions sans les déclarer explicitement

A

On va utiliser la notation lambda ou des fonctions anonymes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Que veut dire currying ou curried fonctions

A

Currying veut dire transformer une fonction à plusieurs paramètre en une suite d’appel qui renvoie une fonction avec le paramètre suivant

Une fonction curried, a un argument et renvoie une fonction qui utilise la valeur de l’argument

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Exemple de fonction curried

A

Plus(x,y) => x + y

Plus(x)(y) => Plus(x) renvoie une fonction fait la somme de x (valeur fixe) avec y

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Différence entre méthodes et fonctions

A

En programmation fonctionnelle une fonction est un objet pas une méthode

Sinon une méthode s’applique sur un objet ou alors ne renvoie pas de valeur mais agit sur l’objet en POO

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Qu’est-ce qu’une closure?

A

C’est une fonction qui se rappelle des variables dans le contexte ou elle a était défini ou qu’elle soit exécuté après

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Pourquoi parle t’on d’inversion du contrôle en programmation fonctionnelle

A

Les fonctions higher-order contrôle le flux en appelant quand le besoin est là le callback (function). C’est un peu loin de l’habituelle façon de programmer itérative

How well did you know this?
1
Not at all
2
3
4
5
Perfectly