Formation Java, optimisation

Vous découvrirez les spécificités de Java permettant d’améliorer les performances des applications. Vous étudierez l’optimisation de la JVM et du Garbage Collector, les bons usages de Java et de ses principales librairies. Vous verrez enfin les bonnes pratiques de conception au travers de quelques Design Patterns.

PROGRAMME DE FORMATION

 

Méthodologie et outils pour l’optimisation

  • Les éléments impliqués dans l’optimisation
  • Le choix d’un environnement d’exécution performant
  • Les éléments de la méthodologie
  • Outils de profiling et de visualisation de la mémoire. Outils de tests et d’aide (findBugs, CheckStyle…)
  • Le choix du compilateur et de la JVM

L’optimisation et le langage

  • Identifier les vraies sources d’inefficacité
  • Connaître les bons usages qui les évitent
  • L’optimisation et la gestion des objets, les évaluations, les tests

L’optimisation et les librairies standard

  • La manipulation des Strings. Les classes Collections

L’optimisation et quelques Design Patterns

  • L’utilisation des interfaces et des classes abstraites
  • L’utilisation de fabriques
  • L’utilisation d’adaptateurs, décorateurs, proxies

L’optimisation et les I/O

  • Le choix des bonnes classes de Stream
  • L’optimisation de la sérialisation
  • L’optimisation spécifique aux IO réseaux

L’optimisation et le multithreading

  • Le modèle d’activité de Java
  • La synchronisation des threads
  • L’optimisation des threads

L’optimisation et la gestion de la mémoire

  • Les principes généraux des GC (principaux algorithmes, collaboration avec l’allocateur)
  • L’organisation de la mémoire des principales JVM
  • La saturation mémoire (cause, diagnostic, solutions)
  • Les évolutions Java6 : le Garbage Collector

L’optimisation et l’utilisation de librairies C et C++

  • Les principes généraux de JNI : les étapes du développement. L’API JNIEnv. JNI et les performances

Objectifs pédagogiques

  • Optimiser le code Java d’une application pour en améliorer les performances
  • Maîtriser les outils d’aide à l’optimisation
  • Optimiser le fonctionnement de la machine virtuelle
  • Optimiser l’utilisation des librairies standards
  • Mettre en œuvre des Design Patterns significatifs

Participants

  • Développeurs, ingénieurs, chefs de projets proches du développement
 

Prérequis

  • Bonnes connaissances du langage Java. Expérience requise en programmation Java

Les cours ont lieu de 9h à 12h30 et de 14h à 17h30
Les participants sont accueillis à partir de 8h45

Durée : 4 jours
Réf : FJEO
Prix  2020 : 2100 € H.T.
Pauses et déjeuners offerts

Cette formation vous intéresse

Notre équipe est à votre écoute pour étudier vos besoins en formation et vous proposer les meilleures solutions.
Contactez-nous pour fixer un rendez-vous ou décrivez-nous votre projet. Nous prendrons contact avec vous rapidement.