Formation Elm

Initiez-vous à la programmation fonctionnelle pour le web et comprenez l'architecture "Model / View / Update" durant cette formation Elm !

Prix (Formation inter-entreprise)

1200€ HT / personne

Durée

2 jours

Dates

Nous pouvons organiser des sessions à d'autres dates ou dans d'autres villes (Bordeaux, Lille, Lyon, Marseille, Montpellier, Nantes, Nice, Paris, Strasbourg, Toulouse...)

Durant cette formation Elm, vous apprendrez la programmation fonctionnelle et le typage statique dans le cadre du développement web. Vous découvrirez une solution où le langage de programmation et le framework web ne font qu'un. Vous vous appuierez sur le compilateur pour éviter les exceptions à runtime. Vous compilerez vers JavaScript des applications performantes et de taille réduite.

Les deux journées comportent de nombreux ateliers pratiques où vous développerez un dashboard interactif d'analyse de données. Vous calculerez et présenterez des indicateurs statistiques (top pages, unique visitors...) à partir de données d'audience issues d'une API. Chaque atelier comporte des exercices optionnels, pour aller plus loin.

A l’issue de la formation, vous repartirez avec le code source de votre projet, les tests unitaires et d'intégration et les scripts pour le mettre en ligne. Vous pourrez adapter les pages et le jeu de données afin de créer d'autres dashboards.

Nos sessions sont limitées à 6 participants : votre formateur est disponible pour vous accompagner individuellement. Ainsi, cette formation Elm est ouverte aux développeur·se·s back, front ou full-stack, avec ou sans première experience en Elm.

Les objectifs

  • Comprendre l'architecture Elm et la philosophie du langage
  • Découvrir le typage dans le cadre du développement d'applications web
  • Manipuler un jeu de données en programmation fonctionnelle
  • Récupérer et décoder des données issues d'une API

Pré-requis

  • Avoir une première expérience de programmation côté client ou côté serveur
  • Avoir des connaissances en HTML et CSS
  • Apporter un ordinateur portable

Le programme de la formation Elm

Jour 1 - La programmation fonctionnelle pour le web

Elm
  • Philosophie du langage et compilation
  • Environnement de développement
  • Expressions, fonctions, closure et pipe operators
  • List, record, tuple et Html
  • Types alias, types personnalisés
  • Pattern matching, destructuring, métacaractère
Programmation fonctionnelle
  • Immutabilité, fonctions pures, fonctions d'ordre supérieur
  • Curryfication, ordre des arguments
  • List vs Array
  • Manipulation de Maybe et de Result
  • Mapping, filtering, combining
Mise en pratique
  • Création de différents types pour décrire le jeu de données
  • Manipulation des valeurs optionnelles et des cas d'erreurs
  • Filtrage et transformation du jeu de données
  • Affichage visuel d'indicateurs clés à partir de données initiales
  • Tests unitaires avec elm-test

Jour 2 - Création d'une application web

Pages et routing
  • Modules et organisation du code
  • Parsing d'URL et Browser.Navigation
  • Gestion de plusieurs pages
  • Styling (inline / classes / librairies)
Cycle de vie d'une application Elm
  • Messages, actions utilisateurs et Html.Events
  • Ajout de data-attributes
  • Décodage JSON
  • Récupération de données distantes via une API (Commands)
  • Interaction avec JavaScript (Ports et Flags)
Mise en pratique
  • Design du dashboard et création d'un menu de navigation
  • Gestion de différentes URLs
  • Ajout d'une barre d'outils pour naviguer dans les données statistiques
  • Mise à jour des indicateurs en fonction des retours serveur et gestion des erreurs
  • Scroll automatique de la page
  • Tests d'intégration avec Cypress
  • Déploiement sur staging et en production

Télécharger le programme

Besoin d'aide ?

Vous souhaitez discuter avec nous à propos de votre projet de formation ?
Vous voulez plus d'information sur une formation ou notre fonctionnement ?


Rappel Email

Nos forces

  • Des formations à taille humaine
  • Des formateurs passionnés
  • Des véritables workshop
Accéder au Manifeste

Nos clients

Moody's Analytics
SAP
La Poste
Voyage SNCF
CNRS
Peugeot

Nos formations en images

CasperJS
Angular
Machine Learning avec Python
Machine Learning avec Python

Formation Elm

Initiez-vous à la programmation fonctionnelle pour le web et comprenez l'architecture "Model / View / Update" durant cette formation Elm !

Durant cette formation Elm, vous apprendrez la programmation fonctionnelle et le typage statique dans le cadre du développement web. Vous découvrirez une solution où le langage de programmation et le framework web ne font qu'un. Vous vous appuierez sur le compilateur pour éviter les exceptions à runtime. Vous compilerez vers JavaScript des applications performantes et de taille réduite.

Les deux journées comportent de nombreux ateliers pratiques où vous développerez un dashboard interactif d'analyse de données. Vous calculerez et présenterez des indicateurs statistiques (top pages, unique visitors...) à partir de données d'audience issues d'une API. Chaque atelier comporte des exercices optionnels, pour aller plus loin.

A l’issue de la formation, vous repartirez avec le code source de votre projet, les tests unitaires et d'intégration et les scripts pour le mettre en ligne. Vous pourrez adapter les pages et le jeu de données afin de créer d'autres dashboards.

Nos sessions sont limitées à 6 participants : votre formateur est disponible pour vous accompagner individuellement. Ainsi, cette formation Elm est ouverte aux développeur·se·s back, front ou full-stack, avec ou sans première experience en Elm.

Les objectifs

  • Comprendre l'architecture Elm et la philosophie du langage
  • Découvrir le typage dans le cadre du développement d'applications web
  • Manipuler un jeu de données en programmation fonctionnelle
  • Récupérer et décoder des données issues d'une API

Pré-requis

  • Avoir une première expérience de programmation côté client ou côté serveur
  • Avoir des connaissances en HTML et CSS
  • Apporter un ordinateur portable

Le programme de la formation Elm

Jour 1 - La programmation fonctionnelle pour le web

Elm
  • Philosophie du langage et compilation
  • Environnement de développement
  • Expressions, fonctions, closure et pipe operators
  • List, record, tuple et Html
  • Types alias, types personnalisés
  • Pattern matching, destructuring, métacaractère
Programmation fonctionnelle
  • Immutabilité, fonctions pures, fonctions d'ordre supérieur
  • Curryfication, ordre des arguments
  • List vs Array
  • Manipulation de Maybe et de Result
  • Mapping, filtering, combining
Mise en pratique
  • Création de différents types pour décrire le jeu de données
  • Manipulation des valeurs optionnelles et des cas d'erreurs
  • Filtrage et transformation du jeu de données
  • Affichage visuel d'indicateurs clés à partir de données initiales
  • Tests unitaires avec elm-test

Jour 2 - Création d'une application web

Pages et routing
  • Modules et organisation du code
  • Parsing d'URL et Browser.Navigation
  • Gestion de plusieurs pages
  • Styling (inline / classes / librairies)
Cycle de vie d'une application Elm
  • Messages, actions utilisateurs et Html.Events
  • Ajout de data-attributes
  • Décodage JSON
  • Récupération de données distantes via une API (Commands)
  • Interaction avec JavaScript (Ports et Flags)
Mise en pratique
  • Design du dashboard et création d'un menu de navigation
  • Gestion de différentes URLs
  • Ajout d'une barre d'outils pour naviguer dans les données statistiques
  • Mise à jour des indicateurs en fonction des retours serveur et gestion des erreurs
  • Scroll automatique de la page
  • Tests d'intégration avec Cypress
  • Déploiement sur staging et en production

Télécharger le programme

Le(s) formateur(s)

Cédric Soulas

Cédric Soulas

Cédric est adepte de la programmation fonctionnelle depuis 12 ans. Il a suivi un parcours Mathématiques-Informatique puis une formation ingénieur à Telecom ParisTech.
Il a été core developer sur Opa, un langage fonctionnel pour le web et développé avec OCaml (lire "Opa is a cousin of Reasonml, it pioneers many ideas […]"). Il a travaillé pendant 5 ans sur le compilateur vers JavaScript et le runtime des applications web générées.
Pendant toutes ces années, il a évangélisé et enseigné ce nouveau langage aux développeurs lors de meetups, de hackathons et de formations. Il a aussi formé des développeurs à la platforme de cloud computing OpenStack et à l'environement de développement Wakanda pour Angular/Ionic.

Aujourd'hui Cédric travaille à la fois en tant que Web Developer et Developer Advocate. Il enseigne la programmation fonctionnelle et la programmation réactive, en particulier via elm-batteries et reactive.how où il produit des leçons et visualisations animées. Il développe maintenant des supports pédagogiques et des applications web avec Elm, pour le compte d'entreprises et pour ses projets personnels comme le récent "Launchpad for RxJS".

Voir son profil détaillé

Suivi de formation en option

A l'issue de la formation, nos formateurs peuvent aussi intervenir pour vous accompagner dans la mise en application des compétences acquises :

  • en répondant à vos questions lors de rendez-vous téléphoniques réguliers
  • en étant présents physiquement à l'amorce du projet
  • en réalisant un audit de vos pratiques quelques semaines/mois après la formation

Cette idée vous intéresse ? Faîtes-le nous savoir pour que nous trouvions la formule adaptée à votre situation.