Cours

Java - Nouveautés des versions 11 à 21 («JA1121»)

Dans cette formation, découvrez les nouveautés des versions 11, 17 et 21 de Java.
Durée 3 jours
Prix 2'025.–   excl. 8.1% TVA
Documents Support de cours numérique

Description de la formation

Objectifs
  • Maîtriser les nouvelles fonctionnalités depuis Java 11 jusqu'à Java 21
  • Connaître, version après version, les nouveautés apportées aux dernières versions LTS de Java
  • Mettre en pratique les nouveautés significatives et les plus importantes
  • Connaître quelles sont les nouveautés apportées à la version précédente
Contenu
Les versions Java 11, Java 17 et Java 21 sont des versions LTS (Long Term Support), comme Java 8 et Java 11, utilisables en production, contrairement aux versions 9, 10, 12, 18, 19, 20 …destinées aux développeurs pour leur permettre de se familiariser avec des nouveautés dont certaines seront retenues dans les versions LTS suivantes.
Java 11, sorti en septembre 2018, comporte les nouveautés de Java 9 à Java 11, bouleverse les habitudes par l'aspect commercial lié aux licences Oracle et propose de rendre modulaire les nouvelles applications.
Java 17 et java 21, sortis respectivement en septembre 2021 et en septembre 2023, consolident toutes les nouveautés depuis java 11, notamment les records et les classes scellées et les threads virtuels et les record patterns.
  1. Nouveautés essentielles de Java 11
    • Les licences Oracle
      • Nouvelle gestion des versions de Java
      • Commercialisation du JDK 11 par Oracle
      • Conséquences du Long Term Support d'Oracle
      • JDK11 d'Oracle vs Open JDK 11
    • Les modules
      • Notion de module
      • Format du descripteur de module
      • Utilisation des modules
      • Gestion des dépendances entre modules
      • Intérêt du module-path
      • Notions de modules anonymes et modules automatiques
      • Mise en œuvre de services
      • Modularité du JDK
      • Nouvelle organisation de la documentation des API Java
      • Problématique des migrations
      • L’outil jdeps
    • Fichiers Jar
      • Fichiers jar modulaires
      • Fichiers jar multi-versions
      • Intérêt du format jmod
      • Rôle du linker Java Jlink dans le déploiement d'applications Java
    • Autres nouveautés dans Java 11
      • Exécution de scripts Java avec JShell
      • Mise à jour de l'API Process
      • Méthodes privées dans les interfaces
      • Méthodes de fabrique pour les collections
      • Nouvelles méthodes dans l'API Stream
      • Amélioration de l'instruction try-with-resource
      • Annotation @SafeVarargs
      • Programmation réactive avec l'API Flow
      • Déduction du type des variables locales avec var
      • Nouvelles méthodes de fabrique pour les collections
      • Nouvelles méthodes dans la classe Collectors
      • Nouvelle méthode dans la classe Optional
      • Nouvelles méthodes dans la classe Objects
      • Support du protocole HTTP/2 et intégration des WebSockets
      • Exécution directe d'un fichier source
  2. Nouveautés principales de Java 17
    • Évolutions dans la syntaxe
      • Pattern matching avec instanceof
      • Nouvelle syntaxe pour le switch
      • Les blocs de texte
      • Les records
      • Les classes et interfaces scellées
    • Autres nouveautés dans Java 17
      • L’API Vector
      • L’API Foreign Memory Access
      • Nouvelle implémentation de ServerSocket
      • Sérialisation avec @Serial
      • Message lié au NullPointerException
      • L’outil jpackage
  3. Nouveautés essentielles de Java 21
    • JVM
      • Ramasse-miettes générationnel ZGC
    • Langage
      • Le Pattern Matching pour switch
      • Les Record Patterns
    • Librairies
      • Les threads virtuels
      • Les collections de type séquence
      • L’API d’encapsulation des clés de cryptage
      • Le Serveur web intégré
      • Réflexion avec les Method Handles
    • Fonctionnalités en prévision (Preview features)
      • Modèles de chaînes (String templates)
      • Classes anonymes et méthodes d’instance main (unnamed classes and instance main methods)
      • Patterns et variables anonymes (unnamed patterns and variables)
      • Valeurs étendues (scoped values)
      • Concurrence structurée (structured concurrency)
      • API de gestion mémoire et de fonctions étrangères (Foreign function & memory API)
      • API Vector (Vector API)
Méthodologie & Didactique
Le formateur alterne entre méthode démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation).
Public cible
Cette formation s'adresse aux développeurs et chefs de projets techniques maîtrisant le langage Java.
Prérequis
Les participantes et participants doivent connaître la version Java 8 et avoir une certaine expérience pratique.

    Java - Fondamentaux de la programmation («JAVAF»)

    5 jours
    • Genève, Lausanne
    CHF
    3'375.–

Téléchargement

Questions sur le cours

Avez-vous des questions?
Prénom
Nom
Société optionnel
e-mail
Téléphone
Je souhaite réserver ce cours en tant que cours d'entreprise
Prénom
Nom
Société optionnel
e-mail
Téléphone
Nombre de participants
Lieu de formation souhaité
Date de début (DD.MM.YYYY)
Date de fin (DD.MM.YYYY)

Choisissez votre session...

26
mai
2025
28
mai
2025
Lausanne
Français
Horaires
CHF 2’025.-
excl. 8.1% TVA
CHF 2’025.-
excl. 8.1% TVA
7
JUL
2025
9
JUL
2025
Genève
Français
Horaires
CHF 2’025.-
excl. 8.1% TVA
CHF 2’025.-
excl. 8.1% TVA
20
aoû
2025
22
aoû
2025
Lausanne
Français
Horaires
CHF 2’025.-
excl. 8.1% TVA
CHF 2’025.-
excl. 8.1% TVA
1
oct
2025
3
oct
2025
Genève
Français
Horaires
CHF 2’025.-
excl. 8.1% TVA
CHF 2’025.-
excl. 8.1% TVA
10
nov
2025
12
nov
2025
Lausanne
Français
Horaires
CHF 2’025.-
excl. 8.1% TVA
CHF 2’025.-
excl. 8.1% TVA
Prochaine date
26
mai
2025
28
mai
2025
Lausanne
Français
Horaires
CHF 2’025.-
excl. 8.1% TVA
CHF 2’025.-
excl. 8.1% TVA