M2i Formation

Langages et développement - Développeur Java

Java 9, 10 et 11 - Mise en oeuvre des nouveautés

Présentiel

2 jours (14 heures) - JAV9-NEW

Accueil  ›  Formations Informatique  ›  Langages et développement  ›  Développeur Java  ›  Java 9, 10 et 11 - Mise en oeuvre des nouveautés

Objectifs pédagogiques

  • Comprendre le système de modules Java 9
  • Migrer une application de Java 8 vers Java 9 exploitant le système de modules
  • Utiliser les nouveautés de Java 9 comme JShell, les nouvelles méthodes de l'API Stream, les clients HTTP 2, les collections immutables, le Process API, et d'autres nouveautés.

Niveau requis

Connaître parfaitement Java 8 et surtout maîtriser les lambdas.

Public concerné

Concepteurs et développeurs souhaitant migrer vers Java 9 ou conduisant des projets de développement Java 9.

La Défense27/03/20191 200 € HTDates proposées dans les agences M2iRéserver
La Défense09/09/20191 200 € HTDates proposées dans les agences M2iRéserver

Sessions
planifiées
Sessions
ouvertes
Sessions
confirmées
Réserver
le stage

Metz27/03/20191 200 € HTDates proposées dans les agences M2iRéserver
Mulhouse27/03/20191 200 € HTDates proposées dans les agences M2iRéserver
Nancy27/03/20191 200 € HTDates proposées dans les agences M2iRéserver
Reims27/03/20191 200 € HTDates proposées dans les agences M2iRéserver

Afficher plus de dates

Sessions
planifiées
Sessions
ouvertes
Sessions
confirmées
Réserver
le stage

Caen27/03/20191 200 € HTDates proposées dans les agences M2iRéserver
Évreux27/03/20191 200 € HTDates proposées dans les agences M2iRéserver
Le Havre27/03/20191 200 € HTDates proposées dans les agences M2iRéserver
Lille27/03/20191 200 € HTDates proposées dans les agences M2iRéserver

Afficher plus de dates

Sessions
planifiées
Sessions
ouvertes
Sessions
confirmées
Réserver
le stage

Dijon27/03/20191 200 € HTDates proposées dans les agences M2iRéserver
Grenoble27/03/20191 200 € HTDates proposées dans les agences M2iRéserver
Lyon27/03/20191 200 € HTDates proposées dans les agences M2iRéserver
Saint-Étienne27/03/20191 200 € HTDates proposées dans les agences M2iRéserver

Afficher plus de dates

Sessions
planifiées
Sessions
ouvertes
Sessions
confirmées
Réserver
le stage

Bordeaux27/03/20191 200 € HTDates proposées dans les agences M2iRéserver
Orléans27/03/20191 200 € HTDates proposées dans les agences M2iRéserver
Tours27/03/20191 200 € HTDates proposées dans les agences M2iRéserver
Bordeaux09/09/20191 200 € HTDates proposées dans les agences M2iRéserver

Afficher plus de dates

Sessions
planifiées
Sessions
ouvertes
Sessions
confirmées
Réserver
le stage

Aix-en-Provence27/03/20191 200 € HTDates proposées dans les agences M2iRéserver
Montpellier27/03/20191 200 € HTDates proposées dans les agences M2iRéserver
Sophia Antipolis27/03/20191 200 € HTDates proposées dans les agences M2iRéserver
Aix-en-Provence09/09/20191 200 € HTDates proposées dans les agences M2iRéserver

Afficher plus de dates

Sessions
planifiées
Sessions
ouvertes
Sessions
confirmées
Réserver
le stage

Le système de modules en Java 9

  • Quid d'OSGi (Open Services Gateway initiative)
  • Architecture et modularité dans le JDK 9
  • La déclaration des modules : requires, exports, uses, provides, with, opens
  • Les mots réservés
  • Exemple 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, les JAR
  • Exporter un package pour l'utiliser ailleurs
  • Encapsulation forte et accessibilité

Migrer le code vers Java 9

  • Les modules :
    • Unnamed
    • Automatic
  • Compiler et lancer une application modularisée
  • Services et ServiceLoader
  • L'interface Service Provider
  • Charger et consommer des services
  • Implémenter Service Provider
  • Lancer une application avec Service Provider

JShell ou Read Evaluate Print Tool (REPL)

  • Introduction à JShell
  • Exécuter et tester du code à la volée

L'API Optional

  • Méthodes :
    • or()
    • ifPresentOrElse()
    • stream()

Améliorations de l'API Stream

  • Rappels rapides de l'API Stream
  • TakeWhile et dropWhile
  • Les méthodes iterate et ofNullable

Améliorations de l'API Process

  • Les interfaces ProcessHandle et ProcessHandle.Info

L'API HTTP 2

  • Le protocole HTTP 2
  • Le mode asynchrone dans l'API HTTP 2
  • Intégration des WebSockets

Les collections non mutables

  • Les méthodes Factory
  • Les collections non mutables
    • List
    • Set
    • Map
    • Map.Entry
  • Optimisation d'accès

La programmation réactive

  • Présentation de la programmation réactive
  • Les Reactive Streams
  • Les Flow API, Flow.Publisher, Flow. Subscriber, Flow.Processor
  • Présentation de RxJava

Les autres apports

  • Les méthodes privées d'interface
  • Améliorations du "try with resources"
  • L'API CompletableFuture
  • Améliorations du garbage collector