Les ateliers de relecture de mon livre consacré à la programmation fonctionnelle ont démarré en janvier. Découvrez Practical FP !
Retour
La programmation fonctionnelle en pratique
La programmation fonctionnelle en pratique
La programmation fonctionnelle pâtit d'une bien mauvaise image : compliquée voire élitiste, en tout cas inapplicable au quotidien. En un mot : théorique. Tout l'objet de cette formation sera de vous démontrer le contraire. Comment ? Par des exemples, en JavaScript. Oui. Ce langage a bien des défauts, mais il est incontournable dans notre univers professionnel, c'est un fait. Haskell est un langage magnifique, mais si vous devez apprendre Haskell pour faire de la programmation fonctionnelle, ça ne changera rien à votre quotidien. Donc on reste en JavaScript, qui, sans être un langage fonctionnel strict, possède toutes les fondamentaux nécessaires à l'écriture de code purement fonctionnel. Nous apprendrons comment écrire du code de meilleure qualité à l'aide de choses simples : fonctions pures, immutabilité, une pointe de curryfication, des notions qui vont littéralement changer votre expérience du développement. Couplé au TDD (Test-driven development), les bugs ne seront bientôt plus qu'un lointain souvenir.
Plan de cours
1Données et comportement
2Jouer avec les fonctions
2.1Les fonctions, citoyens de 1ère classe
2.2Closures
2.3Application partielle
2.4Curryfication
2.5L'importance du contexte
3Pureté
3.1Le danger des états partagés
3.2Déterminisme
3.3Effets de bord
3.4Fonctions pures
3.5Transparence référentielle
3.6Nous voulons des fonctions pures !
4Programmer de manière immutable
4.1Paradigmes impératif et déclaratif
4.2Le mot-clef const
4.3Le spread operator
4.4Le mot-clef readonly
4.5Librairies d'immutabilité
4.6Récursion
4.7Gestion d'état à l'aide de lentilles
5Travailler avec des tableaux
5.1map, filter et reduce
5.2map vs. forEach
5.3map et filter revisités
6Composition de fonctions
6.1Invocation directe
6.2Récursion
6.3Composition
6.4Functors
7Gestion des effets de bord
7.1Idempotence
7.2Architecture hexagonale
7.3Functional core, imperative shell
7.4Gestion d'erreurs
7.5Monades
Modalités
Pour les développeurs
JavaScript / TypeScript
Une connaissance usuelle du JavaScript est requise
30% théorique / 70% pratique
Modulable de 2 à 3 jours
Fractionnable par 1/2 journée
3 à 10 apprenants
Sur site ou à distance
Un avant-goût
Quelques articles afin de vous familiariser d'ores et déjà avec le sujet :
Prix
Le prix inter-entreprises s'applique jusqu'à 3 apprenants d'une même entreprise. Au-delà, un tarif intra-entreprise dégressif vous sera proposé.
1 800 € H.T. / apprenant (format 2 jours)2 200 € H.T. / apprenant (format 3 jours)