Formation De Spring à Spring Boot

Lyon - 2-3 mai

1 400€ HT / personne (1 680€ TTC)

2 jours

Lyon - 19-20 juin

1 400€ HT / personne (1 680€ TTC)

2 jours

Objectifs

Avec l’avènement de Spring Boot, le framework Spring arrive à une maturité telle que la course à l’innovation en fait un partenaire de choix. En complément plus qu’en alternative à Spring Framework, il promeut simplicité et concision et s’inscrit dans la mouvance Cloud et ses exigences.

  • Savoir résumer et illustrer les apports de Spring Boot par rapport à Spring Framework
  • Être capable de développer une application RESTful grâce à Spring Boot en appliquant les bonnes pratiques de développement et intégrant les dimensions transverses
  • Être capable de designer et implémenter des tests automatisés avec Spring Boot
  • Gagner en productivité grâce à l’association de Spring Boot et de votre IDE
  • Avoir conscience des enjeux de déploiement d’une application Spring Boot et des options à disposition

Spring a longtemps été synonyme d’innovation là où Jakarta EE (ex. Java EE) a représenté la standardisation. Depuis de nombreuses années, ce framework qui s’est transformé tour à tour en écosystème puis en pilier de la stratégie de la société Pivotal, n’a cessé de faire ses preuves et a su évoluer au gré des tendances.

Vous découvrirez les apports de Spring Boot par rapport à la façon traditionnelle et historique de créer une application Java avec Spring, et identifierez les grands concepts et le socle mis à disposition pour accélérer vos développements. Par la pratique, vous apprendrez à créer en un temps record un prototype qui pourra par la suite évoluer pour satisfaire aux contraintes de déploiement.

Tout au long de la formation vous apprendrez par la pratique à vous familiariser avec les concepts de Spring Boot, au départ sur de petits exercices guidés visant à rapidement ancrer les concepts, puis au travers d’un projet de complexité métier simple qui aboutira à une API Web complète et son déploiement.

Cette formation porte sur Spring 6.x / Spring Boot 3.x et s’adresse à tout profil technique ayant des compétences de développeur·se Java et ayant une première expérience avec Spring.

Acquis à l'issue de la formation

A l’issue de cette formation, vous serez :

  • capable d’identifier les apports de Spring Boot par rapport à Spring Framework
  • en mesure de créer et faire évoluer une application complète en utilisant Spring Boot
Vous aurez acquis les piliers de Spring Boot qui vous permettront d’aborder tant la migration progressive de vos applications Spring que de vous ouvrir un nouveau champ de vision vers les architectures microservices.

Public concerné et pré-requis

  • Connaissance préalable de Java 8 ou supérieur (un JDK 17 sera nécessaire)
  • Connaissance préalable de Spring Framework
  • Être familier d’un outil de build parmi Maven et Gradle
  • Connaissances de base sur l’écriture de tests unitaires avec JUnit ou équivalent
  • Connaissances de base sur les principes REST
  • Notions sur Git
  • Les participants devront être équipés d’un PC (non fourni) et avoir installé Git dans sa dernière version.

Evaluation

En début de formation, une autoévaluation est effectuée pour évaluer le niveau, ainsi que les attentes de chaque participant. Ainsi nous pouvons organiser au mieux les différents groupes de travail.
Par la suite, le formateur effectue une évaluation continue à l'aide des nombreux exercices pratiques.
En fin de formation, la progression et les acquis sont autoévalués par chacun des participants. Le formateur fournit à chacun des participants une évaluation, ainsi que les axes d'amélioration.
En option, un accompagnement postformation peut être effectué. Cela fera l'objet d'un devis complémentaire.

Programme

  • 1ère demi-journée : Module 1 - fondamentaux de Spring et apports de Spring Boot
    • Chapitre 1 : Rappels sur Spring Framework
      • Les patterns piliers du framework
      • Les styles de configuration / déclaration
      • Les pratiques de test avec / grâce à Spring
      • Prise de connaissance d’une application exemple
    • Chapitre 2 - Simplifier le setup et le développement d’une application Spring avec Spring Boot
      • Qu’apporte Spring Boot ?
      • Bootstrapping avec Spring Initializr
      • Ajout de fonctionnalités : les starters
    • Chapitre 3 - La place de Spring (Boot) dans l’écosystème Java
      • Spring (Boot) et les standards Jakarta EE
      • Les frameworks alternatifs à Spring Boot
    • Chapitre 4 : Spring Boot DevTools
  • 2ème demi-journée : Module 2 - Déclaration de composants et de configurations
    • Chapitre 1 - Focus sur les déclarations de composants avec Java Config
    • Chapitre 2 - Quelques éléments de configuration avancée avec Java Config
      • Convention over configuration
      • Autoconfiguration
    • Chapitre 3 - Création d’un contrôleur avec Spring Boot
      • Mapping de requêtes
      • Notion de signatures de méthodes flexibles
  • 3ème demi-journée : Module 3 - Développement d’une API REST avec Spring Boot
    • Chapitre 1 - Démarrage d’une application web avec Spring Boot
      • Les différentes façons de démarrer une application web Spring Boot
      • Choix du conteneur de servlets intégré
      • Déploiement au sein d’un conteneur de servlets
    • Chapitre 2 - Configuration d’une application Spring MVC
      • DispatcherServlet
      • ContextLoaderListener
      • Notion de hiérarchie de contextes
    • Chapitre 3 - Création de Webservices REST
      • Rappels sur REST
      • Mise en oeuvre avec Spring MVC
      • Quelques éléments avancés
    • Chapitre 4 - Tester son API REST
  • 4ème demi-journée : Module 4 - Sécurisation et déploiement d’une API REST
    • Chapitre 1 - Spring Security
      • Authentification et autorisations
      • Mise en application des autorisations sur une API REST
      • Tests d’intégration des aspects sécurité
    • Chapitre 2 - Les différents packagings et leur déploiement
      • Rappel des modes de packaging
      • Déploiement au sein d’un conteneur de servlets
      • Création et déploiement d’une image Docker
      • Création et exécution d’une application native avec GraalVM

Formateur / Formatrice

Eric Siber
Eric Siber

Eric est développeur depuis 2003, après une formation d'ingénieur à Centrale Lille. Après un début de carrière en société de services informatique, il est passé indépendant en 2016.

Spécialisé sur la plateforme Java et l'écosystème Spring / Pivotal, il intervient pour ses clients en audit / conseil, en tant que formateur et en tant que développeur / expert / lead technique, mais également en tant que Scrum Master ou Coach Agile/Craft.

Eric notamment animé plusieurs cursus de formation longue de reconversion au métier de développeur lors desquelles il s'est fait une priorité de transmettre les bonnes pratiques du métier de développeur, méthodes pédagogiques orientées vers l'apprentissage par la pratique qu'il applique sur les formations HackYourJob.

Il a donné des formations en entreprises au travers d'autres organismes de formation. Il anime régulièrement des BBLs.