Cours

Java - Nouveautés des versions 8 à 17 («JAV817»)

Dans cette formation de 3 jours, vous explorerez les nouveautés apportées par les versions 8 à 17 de Java.
Durée 3 jours
Prix 2'025.–   excl. 8.1% TVA
Documents Support de cours numérique

Description de la formation

Objectifs
  • Exploiter les principaux apports des versions de la Java Development Kit (JDK) 8 à 16
  • Exploiter des lambda expressions en passant par les streams et l'API DateTime
  • Gérer des modules en passant par les étapes d'une migration réussie
  • Reconnaître les améliorations apportées au langage au fil des versions
  • Utiliser les bases du langage Java avec une meilleure productivité
Contenu
  1. Rappels des apports en programmation concurrente (JDK 7 et plus)
    • Le package java.util.concurrent
    • Les facilités apportées pour le multi-threading et la programmation parallèle
    • Le Fork and Join
  2. Les lambda en Java (JDK 8 et plus)
    • S'approcher de lambda sans Java 8
    • Les lambda expressions
    • Les interfaces fonctionnelles
    • Liste des interfaces fonctionnelles
    • Paramètres d'une lambda expression
    • Cas d'utilisation des lambda expressions
    • Les références de méthode dans les lambda expressions
  3. Les streams (JDK 8 et plus)
    • Présentation générale des streams
    • Créer des streams
    • Opérations intermédiaires sur les streams
    • Opérations terminales
  4. L'API DateTime (JDK 8 et plus)
    • Classes importantes de DateTime
    • Utilisation de DateTime
  5. Le système de modules (JDK 9 et plus)
    • Architecture et modularité dans le JDK 9
    • La déclaration des modules
      • Requires
      • Exports
      • Uses
      • Provides
      • With
      • Opens
    • Les mots réservés
    • Exemples des classes d'applications modularisées
    • Le fichier module-info.java
    • Le graphe de dépendances
    • Lancer une application à partir des modules
    • Le packaging des modules et les JAR
    • Exporter un package pour l'utiliser ailleurs
    • Encapsulation forte et accessibilité
  6. JShell (JDK 9 et plus)
    • Introduction à JShell
    • Exécuter et tester du code à la volée
  7. L'API Optional (JDK 9 et plus)
    • Les méthodes
      • or()
      • ifPresent()
      • ifPresentOrElse()
      • stream()
  8. L'API Process (JDK 9 et plus)
    • Gestion des process lancés
    • L'interface ProcessHandle
  9. Autres apports de la JDK 9
    • Améliorations des streams Java 8
    • L'API HTTP 2
    • Nouvelles collections
    • Les Reactive Streams, les streams asynchrones
    • Méthodes privées d'interface
    • L'API CompletableFuture
  10. Apports de la JDK 10
    • Inférence de type de variables locales
    • Améliorations dans les API existantes
  11. Apports de la JDK 11
    • Inférences de type pour les lambda expressions
    • Simplification des "run" de programmes
    • Améliorations dans les classes String, StringBuilder et StringBuffer
    • Améliorations des Predicate Java 8
    • Classes imbriquées et visibilité des attributs
    • Suppression des modules JEE, JavaJX et CORBA
  12. Apports de la JDK 12 et 13
    • Le switch comme instruction
    • Les blocs de texte
    • Le mot-clé "yield"
    • Les outils apportés par la JDK 12
  13. Apports de la JDK 14
    • Changements dans les switch
    • Clarifications du NullPointerException
    • Le Live Monitoring
    • Changements dans le "instanceof"
    • Nouveaux outils associés à la JDK 14
  14. Apports de la JDK 15
    • Les classes "Sealed"
    • Fonctionnalités dépréciées
  15. Apports de la JDK 16
    • L'outil "jpackage"
  16. Apports de la JDK 17
    • Apports de la LTS 17
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, architectes et chefs de projets techniques.
Prérequis
Les participantes et participants doivent avoir suivi la formation suivante et avoir une expérience pratique du langage Java :

    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
Genève
Français
Horaires
CHF 2’025.-
excl. 8.1% TVA
CHF 2’025.-
excl. 8.1% TVA
7
JUL
2025
9
JUL
2025
Lausanne
Français
Horaires
CHF 2’025.-
excl. 8.1% TVA
CHF 2’025.-
excl. 8.1% TVA
20
aoû
2025
22
aoû
2025
Genève
Français
Horaires
CHF 2’025.-
excl. 8.1% TVA
CHF 2’025.-
excl. 8.1% TVA
1
oct
2025
3
oct
2025
Lausanne
Français
Horaires
CHF 2’025.-
excl. 8.1% TVA
CHF 2’025.-
excl. 8.1% TVA
10
nov
2025
12
nov
2025
Genève
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
Genève
Français
Horaires
CHF 2’025.-
excl. 8.1% TVA
CHF 2’025.-
excl. 8.1% TVA