Accueil > Développement Java

 > Nouveautés des versions 8 à 17

null

Développement Java

Nouveautés des versions 8 à 17

Objectif

Connaitres les principales évolutions du langage et leurs impacts sur le développement d'applications

Durée : 2 jours (14 heures)

Dates :
-06/03/23
-02/05/23
-05/10/23
-04/12/23

Une première expérience du langage java est requise

Programme de la formation

Introduction

  • Le cycle de release
  • Les versions de Java
  • Intérêt d'une migration

Java 8 et plus Présentation

  • Aperçu des évolutions de Java 8 et plus
  • Evolutions du langage
  • Expressions Lambda
  • Références de méthodes
  • Méthodes par défaut
  • Annotations répétées, annotations de type

Les entrées/sorties et NIO 2

  • Les nouvelles API java.nio.file
  • La classe File
  • Gestion des fichiers : accès, lecture et écriture.
  • Notification des changements d'un fichier(WatchService)
  • FileSystem et la manipulation des archives
  • Les I/O asynchrones

La Java Virtual Machine

  • Le Garbage-First collector
  • Optimisations de la VM

Fork/Join

  • Parallelisation des traitements
  • taches récursives et pools de threads (RecursiveTask / ForkJoinPool)
  • Les méthodes fork() / join() pour distribuer les traitements

Les nouveautés Swing

  • Look & Feel Nimbus
  • Savoir utiliser le JLayer : Calques et transparence
  • gestion de l'état des composants

Les langages dynamiques

  • Scala, Groovy…
  • Découvertes des langages dynamiques
  • Appeler du code dynamique depuis Java
  • Appeler du Java depuis du code Dynamique
  • InvokeDynamic

Evolutions des API

  • Les flux appliqués aux collections
  • Nouveau package pour les dates
  • Nouveautés dans JavaFX

La programmation modulaire Java 9

  • Présentation de Jigsaw
  • La déclaration des modules
  • Les mots réservés
  • Le fichier module-info.java
  • Lancer une application à partir des modules
  • Le packaging des modules et les JAR

Autres nouveautés Java 9

  • Nouveau rythme de publication
  • JShell : la REPL de Java
  • L'API Optional
  • Instanciation de collections immuables
  • Amélioration des streams
  • Méthodes privées dans les interfaces

Nouveautés Java 10

  • L'inférence de type (mot-clé var)
  • Améliorations dans les API existantes

Nouveautés Java 11

  • L'inférence de type pour les paramètres des lambdas
  • Nouveau client HTTP
  • Simplification de l'exécution des programmes
  • Améliorations dans les classes String, StrtingBuilder et StringBuffer
  • Améliorations des Predicate Java 8
  • Classes imbriquées et visibilité des attributs

Autres nouveautés

  • Apports de la JDK 12 à 17
  • Déploiement d'applications avec les profils compacts
  • Invocation de code JavaScipt avec Nashorn
Menu