Programmation Fonctionnelle

Paradigme utilisant des fonctions pures et des données immuables.

La Programmation Fonctionnelle (PF) est un paradigme où les programmes sont construits en appliquant et composant des fonctions. Les fonctions sont des citoyens de première classe.

Principes fondamentaux :
1. Fonctions pures : Même entrée produit toujours même sortie, sans effets secondaires
2. Immuabilité : Les données ne changent jamais après création
3. Fonctions d'ordre supérieur : Fonctions qui prennent ou retournent des fonctions
4. Récursion : Préférée aux boucles

        graph LR
  Center["Programmation Fonctionnelle"]:::main
  Rel_object_oriented_programming["object-oriented-programming"]:::related -.-> Center
  click Rel_object_oriented_programming "/terms/object-oriented-programming"
  Rel_procedural_programming["procedural-programming"]:::related -.-> Center
  click Rel_procedural_programming "/terms/procedural-programming"
  Rel_agile_methodology["agile-methodology"]:::related -.-> Center
  click Rel_agile_methodology "/terms/agile-methodology"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧠 Test de connaissances

1 / 1

🧒 Explique-moi comme si j'avais 5 ans

Imagine une fonction mathématique comme f(x) = x + 2. Tu mets 3, tu obtiens toujours 5. La programmation fonctionnelle signifie que ton code fonctionne comme les maths—fiable, sans surprises !

🤓 Expert Deep Dive

Le calcul lambda (Church, années 1930) fournit la base mathématique de PF. Les monades gèrent les effets secondaires dans les langages purs. Les types de données algébriques et le pattern matching permettent un code type-safe.

📚 Sources