Programmer en Elixir
Un guide complet sur la programmation fonctionnelle et concurrente avec Elixir. Il aborde la transition du penser orienté objet vers le penser fonctionnel, le pattern matching, l'immutabilité, le modèle d'acteur pour la concurrence, et la construction de systèmes distribués robustes avec OTP.
Aperçu du cours
Résumé du contenu
Un guide complet sur la programmation fonctionnelle et concurrente avec Elixir. Il couvre la transition de la pensée orientée objet vers une approche fonctionnelle, le pattern matching, l'immutabilité, le modèle d'acteur pour la concurrence, et la construction de systèmes distribués robustes avec OTP.
Maîtrisez l'art de créer des systèmes concurrents résilients grâce à la beauté de la programmation fonctionnelle.
Auteur : Dave Thomas
Remerciements : José Valim, Corey Haines, Bruce Tate, Jessica Kerr, Anthony Eden, Chad Fowler, Kim Shrier, Candace Cunningham, et Potomac Indexing.
Objectifs d'apprentissage
- Comparer le modèle de transformation des données d’Elixir avec la programmation basée sur l’état classique.
- Configurer l’interpréteur interactif Elixir (IEx) et exécuter du code Elixir via des scripts et la compilation.
- Appliquer l’opérateur de correspondance (
=), l’opérateur d’épinglage (^) et le joker (_) pour déstructurer et valider les données. - Expliquer les implications théoriques et pratiques de l’immutabilité sur les performances et la gestion de la mémoire.
- Identifier et utiliser les types intégrés d’Elixir, notamment les types Valeur, Système et Collection.
- Appliquer les règles d’environnement des variables et l’expression
withpour gérer des transformations complexes des données. - Créer et appeler des fonctions anonymes en utilisant à la fois la notation standard et la notation de capture (
&). - Implémenter des fonctions nommées au sein de modules en utilisant le pattern matching et la récursivité pour gérer une logique complexe.
- Appliquer les clauses de garde et les paramètres par défaut pour contrôler le flux d’exécution des fonctions.
- Désassembler et construire des listes : Utiliser le pattern matching tête/queue pour naviguer dans et construire des structures de liste récursives.