Java niveau avancé

Maîtriser les API avancées de Java

  • Filière :

    Développement logiciel

  • Sous-filière :

    Java & XML

  • Référence

    JA-AV

  • Durée

    2 jours (14 h)

  • Prix unitaire HT

    1 690 € HT

Objectifs pédagogiques

  • Comprendre le fonctionnement de la machine virtuelle (JVM), Superviser et monitorer des applications et la JVM avec JMX
  • Utiliser des traitements multi-tâches et gérer les accès concurrents
  • Gérer des flux avec les API IO, NIO et NIO2
  • Définir et exploiter des annotations, Fournir et consommer des services avec l’API SPI
  • Mettre en œuvre le programmation orientée aspect avec AspectJ

Public cible

  • Architectes
  • Consultants
  • Développeurs
  • Ingenieurs

Pré-requis

Pratique de Java 8 depuis quelques années

Programme de la formation

L’introspection et réflexion

  • Les classes Class, Method, …
  • Manipuler dynamiquement des objets
  • Créer une instance
  • Modifier un attribut
  • Invoquer une méthode

Comprendre la JVM (Machine Virtuelle)

  • Comprendre le GC et la gestion de la mémoire
  • Les différents algorithmes de GC
  • Modifier les paramètres de lancement
  • Comprendre les ClassLoader
  • Stratégie de chargement des classes
  • Ecriture d’un ClassLoader

Gestion des flux

  • Les entrées/sorties
  • Sérialisation/désérialisation d’objets
  • Les modifieurs Java et leurs impacts
  • L’API NIO : Buffer, Channel, …
  • L’API NIO2 : WatchService, …

Multi-tâche et accès concurrents

  • Rappels sur les Thread
  • Le parallélisme avancé (Futur, Executor, …)
  • Le framework Fork/Join
  • Les collections synchronisées : BlockingQueue, ConcurrentMap, …
  • Les objets atomiques utilisant les principes CAS
  • La gestion des verrous

Les annotations

  • Création
  • Exploitation au runtime
  • Exploitation par le compilateur

JMX

  • Présentation de l’architecture
  • Les différents types de MBean
  • Les services d’un agent JMX
  • Les notifications
  • Le monitoring d’une JVM

Service Provider Interface

  • Présentation
  • Exposition de services
  • Consommation de services (ServiceLoader)

AOP avec AspectJ

  • Présentation
  • Définition d’un aspect
  • Tissage à la compilation/au chargement

Qualité

Cette formation est accessible aux personnes en situation de handicap, nous contacter en cas de besoin d’informations complémentaires.

Programme mis à jour le