illustration de la formation

Construire une Webapp Moderne avec Elixir et Phoenix

Elixir est un langage de programmation multi-paradigme fonctionnant sur la machine virtuelle Erlang (BEAM). Il est créé en 2011 par le développeur José Valim. Il intègre les paradigmes de programmation fonctionnelle, programmation concurrente et programmation orientée processus (acteur), et supporte la métaprogrammation via un système de macros et le polymorphisme via un système dit de protocoles.

Cette formation vous permettra de découvrir le langage, ses spécificités et vous laissera autonome afin de créer un nouveau projet avec du code de qualité. Vous développerez pas à pas des fonctionnalités testées afin de construire un outil de conversion de photos et un outil de vote interactif en ligne et en temps réel.

Objectifs de la formation

  • Comprendre et maitriser les bases du langage Elixir
  • Architecturer et construire une Webapp avec Phoenix
  • Comprendre et appliquer les fondamentaux de la programmation fonctionnelle sur un cas concret
  • Mettre en place des tests automatisés
  • Gestion des logs et des erreurs et la philosophie “let it crash” de Erlang / Elixir

Profil des bénéficiaires

Pour qui

  • Personne pratiquant le développement

Pré-requis

  • Notions de base de programmation
  • Avoir un ordinateur avec un IDE permettant de développer en Elixir (VSC ou IntelliJ ou Vim)
  • Avoir installé la dernière version d’Elixir

Contenu de la formation

Le langage et ses spécificités

  • Historique
  • Plateformes compatibles
  • Gestion de la concurrence
  • Typage dynamique

Configurer un environnement de travail

  • IDE : IntelliJ, VSCode, Vim, NVim
  • Decouvrir iex
  • Exécuter et tester

Base du langage

  • Types de base
  • Operateurs de base
  • Pattern matching
  • Structure conditionnelle
  • Manipulation de String (Binaries, strings, et charlists)
  • Listes et Maps
  • Structuration du code (Modules et Functions)
  • Récursion
  • Processes - Actors
  • IO et système de fichier
  • Structs

Créer un Projet et Utiliser des librairies externes

  • Gestion des dépendances avec mix
  • Gestion des versions
  • Import et utilisation des librairies

Les tests

  • Tests unitaires
  • Framework de test et mock

Créer une Application de vote avec Phoenix (MVC simple)

  • Création du projet
  • Utilisation du scaffolding
  • Utilisation de Phoenix
  • Templating (Vue)
  • Controller
  • Utilisation de Ecto (Model)
  • Utilisation du router

Créer une Application de vote interactive avec Phoenix (avancé)

  • Utilisation des channels
  • Utilisation des sockets
  • Utilisation de la Présence

Créer une Application de vote interactive avec Phoenix Liveview

  • Utilisation des Liveviews
  • Utilisation des Composants

Suivi de l’exécution et évaluation des résultats

  • Evaluation des connaissances (Quizz en début de formation)
  • Evaluation des connaissances (Quizz à la fin de la formation)
  • Formulaires d’évaluation de la formation.
  • Feuilles de présence.
  • Certificat de réalisation de l’action de formation.

Ressources techniques et pédagogiques

  • Apports théoriques
  • Exercices pratiques
  • Partage de retour d’expérience
  • Support de cours

Informations pratiques

1900 HT / Pers

3 jours / 21 heures

présentiel (à distance : nous contacter)

Je m'inscris

Capacité d'accueil

6 à 10 pers

Délai d'accès

72h

Accessibilité

Vous êtes en situation de handicap, intéressé.e par le programme ?

Contactez notre Référent Handicap pour préciser votre besoin.

Référent Handicap :
Marie-Aude FIRMIN