Formation Extreme Java

Advanced Topics

Formation officielle
Formation officielle
Exclusivité Zenika
Exclusivité Zenika

Durée 2 jours
Prix(HT) : 1790 €
JAVA-EXT-01

Prochaines sessions

12 mars 2018
Xavier Detant
Paris
4 juin 2018
Xavier Detant
Paris

Description

La Formation Intensive pour Spécialistes Java est mise au point et animée par Heinz Kabutz, reconnu 'Java Champion' et auteur de la newsletter The Java Specialists. Elle incorpore (sous licence) des éléments pédagogiques fournis par JavaPerformanceTuning.com.

"Cette formation concentre toute mon expertise Java et l'expérience acquise grâce à la publication de plus de 200 articles spécialisés, l'animation de centaines de séminaires et bien sûr l'écriture de centaines de milliers de lignes de code Java. Heinz Kabutz, auteur de la newsletter "The Java Specialists"

Au cours des 4 jours de la formation, nous étudierons plus de 1000 slides couvrant les sujets les plus avancés. A la fin de chaque section, des exercices pratiques permettront la mise pratique des notions étudiées. Même le programmeur Java le plus aguerri y trouvera un certain challenge !

Cette formation s'adresse à tout programmeur Java professionnel possédant au moins 3 ans d'expérience, et qui aimerait réellement maîtriser le langage Java.

La formation "Extreme Java - Advanced Topics" est écrite par le Dr Heinz Kabutz, auteur de la The Java Specialists' Newsletter. Elle inclut aussi (avec licence) du contenu produit par JavaPerformanceTuning.com. Elle est basée sur la formation best-seller Java Specialist Master Course.

Objectifs

  • Apprendre des techniques avancées pour écrire du code Java
  • Comprendre l'API NIO
  • Comprendre les subtilités de la gestion de mémoire en Java, et comment diagnostiquer les problèmes de mémoire
  • Connaître possibilités de l'API de réflection
  • Quelles structures de données sont les plus appropriés pour votre application
  • Comment mieux gérer les exceptions

Pré-requis : 

  • Programmeur Java professionnel possédant au moins 3 ans d'expérience

Public : 

  • Développeur confirmé Architecte

Pédagogie : 

50% théorie 50% pratique

Programme

Jour 1 : Introduction

Jour 1 : Quelques rappels Java 7 et 8

Jour 1 : Java IO - Sérialisation et performance réseau

  • Flux d'objets et mécanisme de sérialisation
  • Personnalisation du format sérialisé
  • Optimisation des performances
  • Compatibilité et évolutivité des flux binaires

Jour 1 : Java NIO

  • Buffers, Channels et Selectors
  • Accès direct au système de fichiers
  • Multiplexage de sockets et traitements non-bloquants
  • Encodage des flux de caractères

Jour 1 : La mémoire en Java

  • Structure de la mémoire, espaces générationnels
  • Mesure de l'activité du GC, impact sur les performances
  • Problèmes fréquents
  • Optimisation de la JVM
  • Finalizers et références
  • Pools d'objets

Jour 2 : L'API Réflexion

  • Chargement et manipulation dynamique des objets
  • Cas particuliers : tableaux et types paramétrés

Jour 2 : Structures de données

  • Notion de complexité spatiale et temporelle
  • Performance des algorithmes de parcours et tri
  • Algorithme de hachage
  • Etude et comparaison des structures de données usuelles

Jour 2 : Gestion des exceptions

  • Hiérarchie et signification des types exceptions
  • Analyse et manipulation des Stacktraces
  • Assertions et qualité logicielle
  • Pièges et bonnes pratiques
  • Considérations de performances

Jour 2 : Gestion des Dates et des TimeZones

  • Temps machine, temps humain
  • Dates, calendriers et timezones en Java
  • Bonnes pratiques

Jour 2 : Logging

  • Enjeux et bonnes pratiques
  • Log4J en action
  • Impact sur les performances