
Formation Java
Maîtriser le développement Java moderne : syntaxe Java 21+, POO, collections et streams, Spring Boot, tests automatisés, performance JVM et déploiement production.
Format
Intra-entreprise
Durée recommandée
≈ 28 à 42 heures
Démarrage
Sous 15 jours
Sur-mesure
Programme co-construit avec le formateur
Pour qui ?
- ›Développeurs souhaitant apprendre Java ou monter en compétences vers Java 21+
- ›Développeurs venant d'autres langages (Python, JS, C#, Go) voulant maîtriser Java
- ›Lead techs et architectes industrialisant leurs équipes Java
- ›Profils Backend ou Full-Stack travaillant sur des projets Spring et Spring Boot
- ›Jeunes diplômés et profils en reconversion se professionnalisant sur Java
Prérequis
- ›Avoir une expérience préalable en programmation (au moins un autre langage : Python, JavaScript, C, C#, PHP). Notions de POO appréciées. Aucun prérequis Java spécifique pour la partie initiation. Disposer d'une machine de développement (JDK 21 ou plus récent installé).
Objectifs pédagogiques
- ›Comprendre l'architecture JVM et maîtriser la syntaxe Java moderne
- ›Appliquer les principes POO et les design patterns essentiels
- ›Exploiter les collections, streams et la programmation fonctionnelle
- ›Gérer exceptions, I/O et concurrence (threads, virtual threads)
- ›Construire une API REST production-ready avec Spring Boot
- ›Mettre en place des tests automatisés et une démarche qualité
- ›Optimiser les performances et déployer en production
- ›Adapter son code Java aux contraintes d'un projet professionnel
Programme détaillé
8 modules, construits autour de vos cas réels.
Durée recommandée ≈ 28 à 42 heures, modulable selon le rythme du groupe et vos contraintes intra-entreprise.
01Fondamentaux Java et écosystème JVM
Chapitres- Comprendre l'architecture JVM, la distinction JRE/JDK et le rôle du bytecode
- Installer et gérer plusieurs JDK avec SDKMAN et choisir une distribution OpenJDK (Temurin, Corretto, Zulu)
- Configurer un IDE professionnel (IntelliJ IDEA, Eclipse, VS Code) et son environnement de débogage
- Mettre en place un projet avec Maven ou Gradle et structurer la gestion des dépendances
- Situer le cycle des releases LTS (Java 21, Java 25), GraalVM et l'interopérabilité avec Kotlin et Scala
02Syntaxe Java moderne et bases du langage
Chapitres- Maîtriser les types primitifs, le typage statique et l'inférence avec var
- Structurer le flux de contrôle (switch expressions, instanceof pattern matching)
- Exploiter les records, les sealed classes et le pattern matching sur switch finalisé en Java 21
- Manipuler les chaînes de caractères, les text blocks et le formatage
- Comprendre la portée des variables, l'immuabilité et les conventions de nommage
03Programmation orientée objet en Java
Chapitres- Appliquer l'encapsulation, l'héritage, le polymorphisme et l'abstraction
- Distinguer interfaces, classes abstraites et méthodes par défaut
- Implémenter les design patterns courants (Factory, Singleton, Observer, Strategy)
- Maîtriser les generics, les bounded types et le code type-safe
- Redéfinir equals, hashCode et toString selon les contrats du langage
- Organiser le code en packages et gérer la visibilité avec le système de modules
04Collections, Streams et programmation fonctionnelle
Chapitres- Maîtriser les collections (List, Set, Map) et choisir la bonne implémentation
- Exploiter la Streams API pour des traitements de données déclaratifs
- Écrire des lambdas et utiliser les method references
- Gérer la nullabilité avec Optional plutôt qu'avec des null bruts
- Construire des agrégations avec les Collectors et les opérations terminales
- Identifier les pièges de performance (autoboxing, parallel streams mal employés)
05Exceptions, entrées-sorties et concurrence
Chapitres- Gérer les exceptions checked et unchecked avec try-with-resources et multi-catch
- Travailler avec les I/O modernes (NIO.2, Path, Files, FileChannel)
- Comprendre le modèle de threads et les primitives de synchronisation (synchronized, Lock, volatile)
- Orchestrer des traitements asynchrones avec ExecutorService et CompletableFuture
- Exploiter les virtual threads, en standard depuis Java 21, et le pattern Fork/Join
06Spring Boot et développement d'une API REST
Chapitres- Initialiser un projet Spring Boot 4 avec Spring Initializr et comprendre l'auto-configuration
- Construire controllers REST, services et repositories avec Spring Data JPA
- Mapper les entités, gérer les transactions et les relations entre tables
- Sécuriser l'API avec Spring Security, JWT et OAuth2
- Externaliser la configuration par profils et variables d'environnement
- Documenter l'API avec Springdoc OpenAPI et exposer une interface Swagger
07Tests automatisés et qualité de code
Chapitres- Écrire des tests unitaires avec JUnit 6 et isoler les dépendances avec Mockito
- Tester une API Spring Boot avec MockMvc et @SpringBootTest
- Mettre en place des tests d'intégration avec Testcontainers (PostgreSQL, Redis, Kafka)
- Mesurer la couverture avec JaCoCo et analyser le code avec SonarQube et SpotBugs
- Automatiser la qualité dans une chaîne CI (GitHub Actions, GitLab CI, Jenkins)
08Performance, déploiement et supervision
Chapitres- Profiler une application avec JFR, Async Profiler et VisualVM
- Tuner la JVM (dimensionnement du heap, choix du GC G1 ou ZGC)
- Containeriser l'application avec Docker, jlink et GraalVM native-image
- Déployer sur Kubernetes ou une plateforme PaaS
- Superviser en production avec Micrometer, Prometheus, Grafana et Sentry
Moyens & supports pédagogiques
- Accueil des stagiaires
- Supports de formation projets
- Apports théoriques et pratiques
- Études de cas concrets
- Auto-positionnement
- Accès en ligne aux ressources
Évaluation & suivi des acquis
Feuille de présence
Émargement des stagiaires en présentiel ou à distance, via support papier ou signature électronique.
Émargement sécurisé
Signatures électroniques collectées en ligne et conservées dans un coffre-fort numérique sécurisé par Dendreo.
Auto-positionnement
Évaluation du niveau des stagiaires en début et en fin de formation pour mesurer la progression.
Évaluations pédagogiques
Validation des acquis par des questions orales ou écrites tout au long de la formation.
Mises en situation
Exercices pratiques et cas concrets pour ancrer les compétences dans la réalité métier.
Attestation de fin de formation
Remise d'une attestation officielle à l'issue de la formation.
Délai d’accès
Sous 15 jours après validation du devis
Accessibilité PSH
Adaptations possibles en situation de handicap. En savoir plus
Questions fréquentes
Ce que les entreprises demandent avant de se lancer.
Sur quelle version de Java la formation s'appuie-t-elle ?
Le socle est Java 21, première LTS à embarquer les virtual threads, et le contenu intègre les apports de Java 25, la LTS la plus récente. Le cycle est régulier : une LTS tous les deux ans, des versions intermédiaires tous les six mois (Java 26 par exemple). Les équipes encore sur Java 8, 11 ou 17 sont les bienvenues : les écarts de syntaxe sont traités au fil des modules, et la formation sert souvent de point de départ à un chantier de migration.La partie Spring couvre-t-elle Spring Boot 4 ?
Oui. Les travaux pratiques se font sur Spring Boot 4, adossé à Spring Framework 7, avec ses jars modulaires et son support natif de Java 25. Les équipes qui tournent encore sur Spring Boot 3 ne sont pas dépaysées : injection de dépendances, Spring Data JPA, Spring Security et configuration par profils fonctionnent de la même façon. Le formateur signale les points de migration (Jakarta EE 11, Tomcat 11) quand ils se présentent.Java est-il encore un bon choix face à Python ou Go ?
Sur les back-ends d'entreprise, oui. Les cœurs bancaires, les plateformes e-commerce, les moteurs de réservation et une grande partie des traitements Kafka tournent sur la JVM. Les virtual threads ont réglé le vieux reproche du thread par requête trop coûteux, et GraalVM native-image ramène le démarrage sous la seconde pour les déploiements serverless ou Kubernetes. Python garde l'avantage en data science et Go sur l'outillage infra, mais pour une API métier à fort trafic maintenue dix ans, Java avec Spring Boot reste le pari le plus sûr.
Prochaine étape
Construire votre formation Java
Un échange de 20 minutes suffit pour cadrer vos enjeux et la session. Devis personnalisé sous 48h, démarrage sous 15 jours.
- Réponse sous 24h ouvrées
- 01 85 71 00 29

Pour aller plus loin





