Formation Spring

Formation Spring

Du concept à la création d'applications robustes et performantes, plongez dans l'écosystème Spring

Prix (Formation inter-entreprise)

2200€ HT / personne

Durée

4 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...)

Découvrez Spring, le framework de développement Java qui simplifie la création d'applications en offrant des solutions de configuration et d'injection de dépendances, tout en favorisant la modularité. Il englobe divers projets connexes comme Spring Boot et Spring Data, ce qui en fait un choix prisé pour des applications Java robustes et évolutives.

Lors de cette enseignement pratique Spring, vous découvrirez les principes d'injection de dépendance et d'inversion de contrôle inhérent. Vous aurez un aperçu des possibilités offertes par Spring Boot afin de simplifier vos développements. Vous constaterez aussi la facilité d'utilisation de Spring Data pour se connecter sans effort à une base de données relationnelle. De plus, vous percevrez la puissance de Spring Web et de Spring Security pour construire rapidement tout type d'applications Web. Enfin, vous maîtriserez différentes techniques de réalisations de tests avec Spring en vous appuyant sur MockMvc, WebTestClient, Cucumber et Mockito pour terminer par la visualisation de vos données par la création de pages web avec Thymeleaf.

Cette formation s'adresse à des développeur·ses ayant déjà une connaissance en Java et souhaitant apprendre à utiliser Spring. Elle porte sur la dernière version de Spring.

Grâce à la création d'une application de gestion de bibilothèque, vous mettrez immédiatement en pratique les notions abordées : de la création de l’infrastructure à la mise en place de tests unitaires, en passant par l’approche de la couche de persistance, des API et de la sécurité. À l'issue de la formation, l'application réalisée sera opérationnelle et pourra être utilisée comme modèle pour des projets à venir.

Toutes nos formations étant limitées à 6 participant·e·s par session, vous aurez donc un contact privilégié avec vos formateurs : Guillaume Drouet, Maxime Odoye et Vincent Le Squère, développeurs bienveillants et passionnés, enthousiastes de partager leur expérience professionnelle lors des cours et durant les moments d’échanges informels au programme de la formation.

Les objectifs

  • Comprendre et mettre en œuvre les principes généraux utilisés par Spring (inversion de contrôle et injection de dépendances)
  • Comprendre l’intérêt de Spring Boot et comment l’utiliser
  • Utiliser la puissance de Spring Data pour se connecter à une base de données relationnelle
  • S'appuyer sur une approche non bloquante

Pré-requis

  • Bonne connaissance du langage de programmation Java et de sa syntaxe
  • Connaissances basiques sur la notion de service web et d’API REST
  • Connaissance du standard HTTP
  • Ordinateur portable avec un IDE (IntelliJ de préférence, éventuellement Eclipse ou VS Code) et une version récente du JDK (idéalement 15)
  • (Bonus) Connaissances basiques de Git
  • Ordinateur portable à apporter

Le programme de la formation Spring

Jour 1 : Introduction à Spring et ses concepts fondamentaux

  • Apprenez comment l’Injection de Dépendance (DI) et l’Inversion de Contrôle (IoC) rendent le code plus modulaire et facilite les tests.
  • Explorez la configuration XML ou basée sur annotations pour définir les Beans et découvrez comment l'ApplicationContext gère le cycle de vie et l'injection de dépendances.
  • Percevez comment externaliser les configurations en utilisant des fichiers properties pour des ajustements plus faciles sans modification du code.
  • Examinez les méthodes de test de Spring, y compris l'injection de dépendances dans les tests et l'utilisation de contextes de test pour vérifier les fonctionnalités.

Mise en pratique :
Création d'un projet Spring simple de bibliothèque et mise en place de différents types de Beans afin de la configurer


Jour 2 : Accélération du développement et bases de données

Spring Boot
- Découvrez comment Spring Boot simplifie le processus de démarrage et la configuration des applications, ainsi que son rôle dans la gestion de la configuration.

Spring Data
- Apprenez comment configurer la connexion à une base de données relationnelle (comme PostgreSQL) en utilisant Spring Data.
- Explorez comment l'ORM transforme les objets Java (héritage et polymorphisme) en données relationnelles et vice versa, facilitant la manipulation des données.
- Découvrez comment Spring Data permet d'effectuer des opérations de base de données en utilisant des méthodes Java sans nécessiter d'écriture manuelle de requêtes SQL.
- Explorez l'approche non bloquante et les APIs réactives pour gérer efficacement les opérations asynchrones et les flux de données, garantissant la réactivité de l'application et des performances robustes face aux charges élevées.

Mises en pratique :
- Intégration de Spring Boot au projet pour simplifier la configuration de notre bibliothèque
- Ajout de Spring Data au projet et création des entités et repository afin de se connecter à une base de données fournie permettant de récupérer le contenu de cette bibliothèque.


Jour 3 : Créer une API REST avec Spring Web

  • Explorez les différences et les avantages de Spring WebMvc et Spring WebFlux pour le développement d'API.
  • Plongez dans le développement de contrôleurs REST pour exposer des points d'accès API. Explorez également le développement de contrôleurs GraphQL pour une manipulation flexible des données, ainsi que l'utilisation de RSocket pour des communications réactives bidirectionnelles.
  • Apprenez comment Spring Web gère automatiquement la conversion des objets Java en formats de données (comme JSON) et vice versa, simplifiant ainsi les échanges entre l'API et les clients.
  • Découvrez comment gérer les erreurs HTTP, y compris les erreurs générées par les clients (erreurs 4xx) et les erreurs générées par le serveur (erreurs 5xx), pour fournir des réponses adaptées aux utilisateurs et assurer une expérience utilisateur fluide.

Mise en pratique :
Ajout de Spring Web au projet et création des contrôleurs afin d'effectuer les différentes opérations de CRUD (Create Read Update Delete) en respectant le standard REST. Les décliner en GraphQL et RSocket dans le but de gérer les éléments de notre bibliothèque.


Jour 4 : Visualiser, Sécuriser et Compiler en Natif

  • Explorez Thymeleaf, un moteur de template pour le développement de pages web et apprenez comment intégrer des données dynamiques dans les pages web pour créer des interfaces utilisateur interactives.
  • Étudiez la gestion des utilisateurs au sein d'une API REST grâce à la mise en œuvre des fonctionnalités d'inscription, de connexion et de gestion des mots de passe utilisateurs.
  • Parcourez la gestion des profils d'utilisateurs et des autorisations pour contrôler l'accès aux différentes parties de l'application en fonction des rôles et des permissions attribués.
  • Appréhendez Spring Native à travers les avantages et les considérations liées à la compilation en natif pour améliorer les performances et l'efficacité de l'application.

Mise en pratique :
Ajout de Spring Security au projet et mise en place d'une stratégie de sécurité basée sur OAuth afin de gérer les accès utilisateurs à notre bibliothèque puis compiler l'application avec Spring Native.

Télécharger le programme

Le(s) formateur(s)

Guillaume DROUET

Guillaume DROUET

Guillaume est développeur depuis 10 ans et spécialisé dans le monde des APIs WEB. Il a travaillé en tant que consultant et formateur en ESN puis en startup dans la région Lilloise.

Aujourd'hui, il est freelance et intervient en tant que tech lead chez ses clients où il les conseille au quotidien sur des problématiques de qualité du code, d'architecture et de performance applicative.

Il aime partager et apprendre via différents axes, c'est pour cela que il donne des formations en parallèle de ses missions. A ce titre, il est également vacataire à l'Université depuis 2014.

Voir son profil détaillé

Vincent LE SQUERE

Vincent LE SQUERE

En 2005, à Brest, suite à l'obtention de son Master en Mathématiques et Informatique, Vincent débute sa carrière de développeur. Au sein de nombreuses ESN (Entreprises de Services du Numérique), il devient lead développeur puis architecte.

Tout au long de ses missions, Vincent a eu l'opportunité de se familiariser avec la formation, partageant ainsi son expertise avec d'autres développeurs.

Par la suite, il rejoint l'éditeur Talend, où il passe cinq ans à travailler sur la data quality.

Enfin, depuis 2021, Vincent cherche à allier ses connaissances en développement Web et en gestion de données en freelance. Il met l'accent sur le back-end, et apprécie les défis liés au front-end, notamment en React.

Aujourd'hui, Vincent travaille autant pour le compte d'entreprises que pour ses projets personnels, tels que Animal-planner (https://www.animal-planner.com).

Voir son profil détaillé

A propos de Human Coders

Human Coders c'est un centre de formation pour développeurs avec :

  • une certification Qualiopi, indispensable pour que vous puissiez obtenir des aides au financement via votre OPCO
  • de nombreux clients qui nous font confiance depuis des années
  • un manifeste pour garantir des formations à taille humaine, des formateurs passionnés, de véritables workshops...
  • 103 formations au catalogue, 1464 sessions depuis nos débuts en 2012 avec une moyenne de satisfaction de 4,6/5
  • la possibilité de vous proposer un accompagnement personnalisé ou du conseil après la formation

1 témoignage

Très bien, tout à fait adapté à mon niveau de grande débutante, et surtout beaucoup de clarté et d'écoute de la part du formateur.

Très bien, tout à fait adapté à mon niveau de grande débutante, et surtout beaucoup de clarté et d'écoute de la part du formateur.

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

Formation Spring

Du concept à la création d'applications robustes et performantes, plongez dans l'écosystème Spring

Formation Spring

Découvrez Spring, le framework de développement Java qui simplifie la création d'applications en offrant des solutions de configuration et d'injection de dépendances, tout en favorisant la modularité. Il englobe divers projets connexes comme Spring Boot et Spring Data, ce qui en fait un choix prisé pour des applications Java robustes et évolutives.

Lors de cette enseignement pratique Spring, vous découvrirez les principes d'injection de dépendance et d'inversion de contrôle inhérent. Vous aurez un aperçu des possibilités offertes par Spring Boot afin de simplifier vos développements. Vous constaterez aussi la facilité d'utilisation de Spring Data pour se connecter sans effort à une base de données relationnelle. De plus, vous percevrez la puissance de Spring Web et de Spring Security pour construire rapidement tout type d'applications Web. Enfin, vous maîtriserez différentes techniques de réalisations de tests avec Spring en vous appuyant sur MockMvc, WebTestClient, Cucumber et Mockito pour terminer par la visualisation de vos données par la création de pages web avec Thymeleaf.

Cette formation s'adresse à des développeur·ses ayant déjà une connaissance en Java et souhaitant apprendre à utiliser Spring. Elle porte sur la dernière version de Spring.

Grâce à la création d'une application de gestion de bibilothèque, vous mettrez immédiatement en pratique les notions abordées : de la création de l’infrastructure à la mise en place de tests unitaires, en passant par l’approche de la couche de persistance, des API et de la sécurité. À l'issue de la formation, l'application réalisée sera opérationnelle et pourra être utilisée comme modèle pour des projets à venir.

Toutes nos formations étant limitées à 6 participant·e·s par session, vous aurez donc un contact privilégié avec vos formateurs : Guillaume Drouet, Maxime Odoye et Vincent Le Squère, développeurs bienveillants et passionnés, enthousiastes de partager leur expérience professionnelle lors des cours et durant les moments d’échanges informels au programme de la formation.

Les objectifs

  • Comprendre et mettre en œuvre les principes généraux utilisés par Spring (inversion de contrôle et injection de dépendances)
  • Comprendre l’intérêt de Spring Boot et comment l’utiliser
  • Utiliser la puissance de Spring Data pour se connecter à une base de données relationnelle
  • S'appuyer sur une approche non bloquante

Pré-requis

  • Bonne connaissance du langage de programmation Java et de sa syntaxe
  • Connaissances basiques sur la notion de service web et d’API REST
  • Connaissance du standard HTTP
  • Ordinateur portable avec un IDE (IntelliJ de préférence, éventuellement Eclipse ou VS Code) et une version récente du JDK (idéalement 15)
  • (Bonus) Connaissances basiques de Git
  • Ordinateur portable à apporter

Le programme de la formation Spring

Jour 1 : Introduction à Spring et ses concepts fondamentaux

  • Apprenez comment l’Injection de Dépendance (DI) et l’Inversion de Contrôle (IoC) rendent le code plus modulaire et facilite les tests.
  • Explorez la configuration XML ou basée sur annotations pour définir les Beans et découvrez comment l'ApplicationContext gère le cycle de vie et l'injection de dépendances.
  • Percevez comment externaliser les configurations en utilisant des fichiers properties pour des ajustements plus faciles sans modification du code.
  • Examinez les méthodes de test de Spring, y compris l'injection de dépendances dans les tests et l'utilisation de contextes de test pour vérifier les fonctionnalités.

Mise en pratique :
Création d'un projet Spring simple de bibliothèque et mise en place de différents types de Beans afin de la configurer


Jour 2 : Accélération du développement et bases de données

Spring Boot
- Découvrez comment Spring Boot simplifie le processus de démarrage et la configuration des applications, ainsi que son rôle dans la gestion de la configuration.

Spring Data
- Apprenez comment configurer la connexion à une base de données relationnelle (comme PostgreSQL) en utilisant Spring Data.
- Explorez comment l'ORM transforme les objets Java (héritage et polymorphisme) en données relationnelles et vice versa, facilitant la manipulation des données.
- Découvrez comment Spring Data permet d'effectuer des opérations de base de données en utilisant des méthodes Java sans nécessiter d'écriture manuelle de requêtes SQL.
- Explorez l'approche non bloquante et les APIs réactives pour gérer efficacement les opérations asynchrones et les flux de données, garantissant la réactivité de l'application et des performances robustes face aux charges élevées.

Mises en pratique :
- Intégration de Spring Boot au projet pour simplifier la configuration de notre bibliothèque
- Ajout de Spring Data au projet et création des entités et repository afin de se connecter à une base de données fournie permettant de récupérer le contenu de cette bibliothèque.


Jour 3 : Créer une API REST avec Spring Web

  • Explorez les différences et les avantages de Spring WebMvc et Spring WebFlux pour le développement d'API.
  • Plongez dans le développement de contrôleurs REST pour exposer des points d'accès API. Explorez également le développement de contrôleurs GraphQL pour une manipulation flexible des données, ainsi que l'utilisation de RSocket pour des communications réactives bidirectionnelles.
  • Apprenez comment Spring Web gère automatiquement la conversion des objets Java en formats de données (comme JSON) et vice versa, simplifiant ainsi les échanges entre l'API et les clients.
  • Découvrez comment gérer les erreurs HTTP, y compris les erreurs générées par les clients (erreurs 4xx) et les erreurs générées par le serveur (erreurs 5xx), pour fournir des réponses adaptées aux utilisateurs et assurer une expérience utilisateur fluide.

Mise en pratique :
Ajout de Spring Web au projet et création des contrôleurs afin d'effectuer les différentes opérations de CRUD (Create Read Update Delete) en respectant le standard REST. Les décliner en GraphQL et RSocket dans le but de gérer les éléments de notre bibliothèque.


Jour 4 : Visualiser, Sécuriser et Compiler en Natif

  • Explorez Thymeleaf, un moteur de template pour le développement de pages web et apprenez comment intégrer des données dynamiques dans les pages web pour créer des interfaces utilisateur interactives.
  • Étudiez la gestion des utilisateurs au sein d'une API REST grâce à la mise en œuvre des fonctionnalités d'inscription, de connexion et de gestion des mots de passe utilisateurs.
  • Parcourez la gestion des profils d'utilisateurs et des autorisations pour contrôler l'accès aux différentes parties de l'application en fonction des rôles et des permissions attribués.
  • Appréhendez Spring Native à travers les avantages et les considérations liées à la compilation en natif pour améliorer les performances et l'efficacité de l'application.

Mise en pratique :
Ajout de Spring Security au projet et mise en place d'une stratégie de sécurité basée sur OAuth afin de gérer les accès utilisateurs à notre bibliothèque puis compiler l'application avec Spring Native.

Télécharger le programme

Le(s) formateur(s)

Guillaume DROUET

Guillaume DROUET

Guillaume est développeur depuis 10 ans et spécialisé dans le monde des APIs WEB. Il a travaillé en tant que consultant et formateur en ESN puis en startup dans la région Lilloise.

Aujourd'hui, il est freelance et intervient en tant que tech lead chez ses clients où il les conseille au quotidien sur des problématiques de qualité du code, d'architecture et de performance applicative.

Il aime partager et apprendre via différents axes, c'est pour cela que il donne des formations en parallèle de ses missions. A ce titre, il est également vacataire à l'Université depuis 2014.

Voir son profil détaillé

Vincent LE SQUERE

Vincent LE SQUERE

En 2005, à Brest, suite à l'obtention de son Master en Mathématiques et Informatique, Vincent débute sa carrière de développeur. Au sein de nombreuses ESN (Entreprises de Services du Numérique), il devient lead développeur puis architecte.

Tout au long de ses missions, Vincent a eu l'opportunité de se familiariser avec la formation, partageant ainsi son expertise avec d'autres développeurs.

Par la suite, il rejoint l'éditeur Talend, où il passe cinq ans à travailler sur la data quality.

Enfin, depuis 2021, Vincent cherche à allier ses connaissances en développement Web et en gestion de données en freelance. Il met l'accent sur le back-end, et apprécie les défis liés au front-end, notamment en React.

Aujourd'hui, Vincent travaille autant pour le compte d'entreprises que pour ses projets personnels, tels que Animal-planner (https://www.animal-planner.com).

Voir son profil détaillé

A propos de Human Coders

Human Coders c'est un centre de formation pour développeurs avec :

  • une certification Qualiopi, indispensable pour que vous puissiez obtenir des aides au financement via votre OPCO
  • de nombreux clients qui nous font confiance depuis des années
  • un manifeste pour garantir des formations à taille humaine, des formateurs passionnés, de véritables workshops...
  • 103 formations au catalogue, 1464 sessions depuis nos débuts en 2012 avec une moyenne de satisfaction de 4,6/5
  • la possibilité de vous proposer un accompagnement personnalisé ou du conseil après la formation

1 témoignage

Très bien, tout à fait adapté à mon niveau de grande débutante, et surtout beaucoup de clarté et d'écoute de la part du formateur.

Très bien, tout à fait adapté à mon niveau de grande débutante, et surtout beaucoup de clarté et d'écoute de la part du formateur.

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