Formation Scala

(14)*

Formation Scala de 3 jours : maîtrisez OOP, programmation fonctionnelle et concepts avancés pour construire des applications robustes et scalables.

Formation Scala

Description

Cette formation Scala vous permet de plonger dans les fondamentaux du langage Scala pour coder, déboguer et structurer des applications modernes avec aisance.

Pendant 3 jours, vous apprendrez à :

  • installer un environnement Scala
  • manipuler des collections (List, Set, Map)
  • utiliser la programmation fonctionnelle avec les fonctions pures et les transformations de fonctions
  • maîtriser des fonctionnalités avancées comme les implicites pour simplifier le passage d’arguments en cascade
  • structurer votre code avec des classes, des traits pour l’héritage multiple, et des outils pour le rendre clair, maintenable et performant.

Tout au long de la formation, vous travaillerez sur des ateliers pratiques variés, par exemple sur des thèmes cinématographiques (ex. : gestion de films) ou d’autres contextes (ex. : gestion de données utilisateurs), pour ancrer vos compétences de manière ludique !

Public

Cette formation s’adresse aux développeur·euse·s (Java, Python, etc.) souhaitant exploiter la puissance de Scala pour pouvoir à terme gérer des projets variés (applications web ou traitement de données massives).

Les objectifs

  • Configurer un environnement de développement Scala
  • Écrire et structurer du code Scala lisible avec classes et traits
  • Exploiter la programmation fonctionnelle (immuabilité, fonctions pures)
  • Manipuler des collections pour traiter des données complexes
  • Gérer les erreurs (Option, Either, Try…)
  • Simplifier le passage d’arguments avec les implicites

Pré-requis

  • Connaissances de base en programmation (idéalement en Java, Python, ou un langage similaire)
  • Familiarité avec les concepts d’objets (classes, instances)
  • Ordinateur portable à apporter

Le programme de la formation Scala

Jour 1 : Les bases de Scala et premières structures

  • Présentation de Scala
    • Historique, cas d’usage, intéropérabilité Java grâce à la JVM
  • Configurer l’environnement
    • Installation de Scala, SBT et utilisation du REPL
  • Variables et types
    • Déclarer des val, var, inférence de type, typage statique
  • Contrôles et boucles
    • Utilisation de if, for, while pour gérer le flux
  • Fonctions de base
    • Créer des fonctions avec def, arguments nommés, valeurs par défaut, récursivité
  • Nuplets
    • Structurer des données hétérogènes (ex. : coordonnées 2D/3D)
  • Classes et Case Classes
    • Modéliser des entités comme un objet Film (titre, année, genre) ou des données utilisateurs

Mises en pratique :

- Créer une application simple dans le REPL pour filtrer une liste de données (ex. : résultatsFiltrés pour des films par année ou des utilisateurs par rôle)

Jour 2 : Programmation orientée objet et collections

  • Traits
    • Factoriser le code avec des traits pour une réutilisation modulaire et l’héritage multiple
  • Chaînes de caractères
    • Manipuler du texte (ex. : formater des chaînes)
  • Listes et Collections
    • Utiliser List, Array, Map avec map, filter, flatMap
  • Chaînes avec variables
    • Interpolation pour générer des rapports dynamiques
  • Ensembles
    • Gérer des collections sans doublons (ex. : genres uniques ou rôles utilisateurs)
  • For-comprehensions
    • Simplifier les transformations de collections

Atelier pratique :
- Étendre l’application pour regrouper des données dans une Map et calculer des statistiques avec une for-comprehension (ex. : groupesMoyennes pour des notes de films ou des scores utilisateurs)

Jour 3 : Programmation fonctionnelle et concepts avancés

  • Fonctions paramétrées
    • Créer des fonctions génériques pour des traitements réutilisables
  • Gestion des erreurs
    • Utiliser Option, Either, Try pour des erreurs robustes
  • Fonctions pures et avancées
    • Écrire des fonctions sans effets de bord et transformer des fonctions multi-arguments
  • Fonctions lambda
    • Simplifier le code avec des fonctions anonymes
  • Implicites
    • Simplifier le passage d’arguments en chaîne avec given/using en Scala 3
  • Import de bibliothèques
    • Importer et utiliser des bibliothèques externes pour enrichir les projets
  • Manipulation de fichiers
    • Lire/écrire des fichiers (ex. : CSV) pour importer/exporter des données

Mise en pratique :
- Finaliser un atelier en générant un rapport CSV de données filtrées (ex. : films ou utilisateurs), avec gestion des erreurs via Option et import de bibliothèques nécessaires (ex. : exporter résultatsFiltrés dans un fichier CSV).

Télécharger le programme

Formations associées

Formateur

Philippe BERIZZI

Philippe est développeur Scala depuis plus de 15 ans, ce langage, qu’il utilise au quotidien lui sert aussi bien pour du scripting, du traitement de données que du développement web full-stack avec Scala.js.
Son parcours hybride mêle développement logiciel, formation technique, gestion d’équipe et même marketing. Philippe privilégie les formations sur-mesure avec une forte place donnée à la pratique.

Ce pédagogue aime alterner théorie et exercices adaptés aux besoins des stagiaires, avec une attention particulière à l’interaction et à la mise en application concrète.

Il vous transmettra une maîtrise solide et durable de Scala, orientée vers vos usages.

FAQ

Nos formations sont éligibles à plusieurs dispositifs de financement, selon votre situation. Human Coders est certifié Qualiopi, ce qui permet la prise en charge par des organismes comme Pôle emploi, votre OPCO ou encore le CPF (Compte Personnel de Formation) pour certaines formations.

Pour en savoir plus, veuillez consulter notre page : Comment financer votre formation ?

Oui, la formation peut être proposée en présentiel ou en distanciel. Pour les inter-entreprises, les modalités (présentiel ou à distance) sont fonction de la session.

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

Les formations se déroulent toujours en petit groupe de 3 à 6 stagiaires. Nous souhaitons que les formateurs et formatrices puissent passer un maximum de temps avec chacun·e.

Voici une journée type :

  • 9h : vous êtes accueillis par votre formateur·rice autour d'un petit déjeuner (croissants, pains au chocolat, jus de fruit, thé ou café...)
  • 9h30 : la formation commence
  • 12h30 : pause de midi. Le·a formateur·rice mangera avec vous. C'est l'occasion d'avoir des discussions plus informelles.
  • 14h : reprise de la formation
  • 18h : fin de la journée

8 raisons de participer à une formation Human Coders

  • Satisfaction client élevée : Un taux de statisfaction de 4,6/5 depuis 2012 (sur 1721 sessions réalisées). 99% des participants se disent satisfaits de nos formations
  • Approche pédagogique unique : Des formations en petit groupe, des formateurs passionnés et expérimentés, de véritables workshops... (Plus d'infos sur notre manifeste)
  • Catalogue de formations complet : 185 formations au catalogue, de quoi vous accompagner sur tout vos projets
  • Écosystème dynamique : Nous accompagnons les dev depuis 13 ans avec des initiatives comme Human Coders News, les Human Talks, le podcast ou encore notre serveur Discord
  • Financement facilité : Organisme certifié Qualiopi, indispensable pour que vous puissiez obtenir des aides au financement via votre OPCO
  • Références clients prestigieuses : De nombreux clients qui nous font confiance depuis des années
  • Accompagnement sur mesure : Nous vous proposons un accompagnement personnalisé par nos consultants pour vous aider dans vos projets au-delà de la formation
  • Valorisation professionnelle : Remise d'un diplôme, d'une attestation et d'une certification, suivant les formations effectuées, que vous pourrez afficher sur vos CV et réseaux sociaux

* Nombre de personnes ayant répondu au questionnaire de satisfaction sur cette formation depuis 2012