Programmation Elixir

Maîtrisez Elixir et Phoenix pour créer des applications web hautement concurrentes et résilientes

Niveau
advanced
Durée estimée
Nombre de phases
3

📋Prérequis

  • Programmation fonctionnelle
  • Concepts de concurrence
  • Web development
  • Bases de systèmes distribués

Les phases du parcours

1

Phase 1 : Fondamentaux Elixir

Apprendre la syntaxe Elixir, la programmation fonctionnelle et le pattern matching

Syntaxe Elixir de base

📚Sujets principaux :
  • Syntaxe et opérateurs
  • Pattern matching
  • Immutabilité
  • Modules et fonctions
  • Pipes (|>)
  • Guards et clauses
  • Recursion
💡Exemples pratiques que vous réaliserez :
  • Fonctions récursives
  • Pattern matching complexe
  • Transformations de données

Collections et Enum

📚Sujets principaux :
  • Lists et tuples
  • Maps et structs
  • Keyword lists
  • Enum module
  • Stream module
  • Comprehensions
  • Reduce et fold
💡Exemples pratiques que vous réaliserez :
  • Traitement de listes
  • Lazy evaluation
  • Data pipelines

Programmation fonctionnelle

📚Sujets principaux :
  • Higher-order functions
  • Closures
  • Partial application
  • Function composition
  • Protocols
  • Behaviours
  • Metaprogramming (macros)
💡Exemples pratiques que vous réaliserez :
  • Composition de fonctions
  • Polymorphisme
  • DSL creation
2

Phase 2 : Concurrence et OTP

Maîtriser les processus Elixir, OTP et construire des systèmes résilients

Processus et concurrence

📚Sujets principaux :
  • Processus légers
  • spawn et send
  • receive et mailboxes
  • Links et monitors
  • Tasks
  • Agents
  • State management
💡Exemples pratiques que vous réaliserez :
  • Concurrent workers
  • Message passing
  • State processes

OTP (Open Telecom Platform)

📚Sujets principaux :
  • GenServer
  • Supervisor
  • Application
  • GenStage
  • Registry
  • DynamicSupervisor
  • Fault tolerance
💡Exemples pratiques que vous réaliserez :
  • Supervised processes
  • Fault-tolerant system
  • Process pools

Systèmes distribués

📚Sujets principaux :
  • Nodes et clustering
  • Distribution transparency
  • ETS (Erlang Term Storage)
  • Mnesia
  • Phoenix PubSub
  • Distributed tasks
  • CRDT
💡Exemples pratiques que vous réaliserez :
  • Cluster setup
  • Distributed cache
  • Real-time distribution
3

Phase 3 : Phoenix framework

Développer des applications web modernes avec Phoenix, LiveView et déploiement

Phoenix basics

📚Sujets principaux :
  • Phoenix structure
  • Controllers et views
  • Router
  • Ecto et database
  • Changesets
  • Migrations
  • Contexts
💡Exemples pratiques que vous réaliserez :
  • CRUD application
  • Database modeling
  • REST API

Phoenix LiveView

📚Sujets principaux :
  • LiveView basics
  • Server-side rendering
  • Events et bindings
  • LiveComponents
  • Streams
  • Uploads
  • Real-time features
💡Exemples pratiques que vous réaliserez :
  • Interactive UI
  • Real-time dashboard
  • Chat application

Production Phoenix

📚Sujets principaux :
  • Channels et WebSockets
  • Authentication (Guardian)
  • Authorization
  • Testing (ExUnit)
  • Deployment
  • Clustering
  • Performance monitoring
💡Exemples pratiques que vous réaliserez :
  • Production app
  • Authentication system
  • Scalable deployment

Prêt à démarrer votre parcours ?

Rejoignez des milliers d'apprenants et bénéficiez d'un accompagnement par des experts

Conseils pour réussir

💪

Pratique régulière

Réalisez des projets concrets pour appliquer ce que vous apprenez

👥

Rejoignez une communauté

Échangez avec d'autres apprenants et partagez votre progression

📝

Prenez des notes

Gardez une trace de vos apprentissages pour y revenir facilement

🎯

Fixez des objectifs

Divisez le parcours en petits objectifs et célébrez vos progrès