2.7 KiB
aliases
aliases | |
---|---|
|
up:: paradigme de programmation #informatique
[!definition] programmation fonctionnelle La programmation fonctionnelle est un paradigme de programmation dans lequel :
- les programmes sont exprimés comme des arbres d'expressions
- le contrôle de flot est fait en combinant des fonctions plutôt qu'en assignant des valeurs
- utiliser des fonction d'ordre supérieur
- ne pas utiliser d'programmation.état
- ne pas utiliser d'entrée/sortie cachée (en sortant du champ local)
^definition
Définitions
[!cite]+ Programming Paradigms - Page In functional programming, control flow is expressed by combining function calls, rather than by assigning values to variables: ^8L7P34B2aLQGLTH3Dg5383243
[!cite]+ What Is Functional Programming? - Page Functional programming is about writing pure functions, about removing hidden inputs and outputs as far as we can, so that as much of our code as possible just describes a relationship between inputs and outputs. ^IU2KWY7La8P4TX53Jg5383243
[!cite]+ Why Functional Programming Matters - Page 1 !images/zotero/5383243WSXGN3RM.png
[!note] Notes programme écrit comme des fonctions qui reçoivent l'entrée en argument et renvoie le résultat. ^WSXGN3RMaH9SGRTMQg5383243p1
Avantages
La programmation fonctionnelle permet :
- d'éviter les programmation.effet de bord, puisqu'ils sont intertits / impossibles.
- une fonction n'a aucun autre effet que de calculer son résultat
- ordre d'éxécution indifférent
- aucun programmation.effet de bord ne peut changer la valeur d'une expression, elle peut être évaluée n'importe quand
- permet de ne pas s'occuper du contrôle de flot
- permet de remplacer une expression par sa valeur sans changer le résultat
- d'être plus proche du formalisme mathématique
- les fonctions en programmation sont proches des fonctions en programmation fonctionnelle
- cela permet de mieux appliquer les théories mathématiques
[!cite]+ Why Functional Programming Matters - Page 1 !images/zotero/538324358PSUPND.png ^58PSUPNDaH9SGRTMQg5383243p1