Extrême Java - Valtech Training

publicité
Retour
formation coaching ingénierie inter intra
Extrême Java
Référence : XJAVA
Durée : 3 jours
A l'issue de la formation "Extrême Java" vous aurez une vision plus claire de la gestion de la mémoire
par la JVM. Vous pourrez mettre en place des outils de profiling pour visualiser les points bloquants de
vos applications, vous aurez des pistes pour l'optimisation de votre code. Vous aurez une vue
d'ensemble de la programmation multi-tâche, multi-coeur et de la programmation par aspects (AOP).
Vous saurez manipuler le Bytecode.
Prochaines sessions :
Toulouse
02/05/2017 : 2 100,00 €
29/08/2017 : 2 100,00 €
22/11/2017 : 2 100,00 €
Paris - 17ème
22/05/2017 : 2 100,00 €
10/07/2017 : 2 100,00 €
18/09/2017 : 2 100,00 €
04/12/2017 : 2 100,00 €
Travaux pratiques :
Au travers du déroulement itératif d'un projet, vous utiliserez des techniques moins connues de
programmation Java comme la gestion poussée des Threads, l'introspection du code avec les
annotations. Vous implémenterez l'injection de comportements en utilisant l'AOP, les proxies
dynamiques et la manipulation de Bytecode. Vous mettrez en place le SecurityManager et regarderez
les APIs de sécurité Java.
Vous allez apprendre à :
Programmer multi-tâche en Java
Sécuriser une application Java
Comprendre la gestion de la mémoire
Tirer parti des possibilités de réflexion du langage
Manipuler et analyser le Bytecode
Exploiter la programmation par aspects
Comprendre l'évolution du langage Java
Analyser le comportement d'une application Java et en accroître les performances
Méthode pédagogique :
60% de travaux pratiques
Audience :
Développeurs Java expérimentés
Pré-requis :
Solide expérience pratique du langage de programmation Java
Programme :
Programmation multi-tâches
Concepts liés aux multi-tâches
Programmer avec des Threads
Problèmes spécifiques au multi-tâche
Problèmes de conception associés
Concepts avancés
Programmer sur un processeur multi-coeur
Impact sur les performances
Entrées / sorties
Exploration du package entrées / sorties (NIO)
Encodage des flux de caractères
Les nouveautés des NIO2
Gestion de la mémoire
Modèle de mémoire Java
Garbage collection, spécifications et algorithmes
Options de la JVM
Objets références
Pools d'objets
Réflexion
Vue d'ensemble
Introspection de classes
Manipuler des objets, des tableaux
Manipuler le Bytecode
Utiliser Javassist
Contraintes de sécurité
Proxies dynamiques
ClassLoaders et manipulation de classes au chargement
Sécurité Java
Problématiques et principes de sécurité
Sécurité de niveau langage et de la JVM
API de sécurité (JAAS, JCE, JSSE)
Annotations
Principe des annotations
Annotations prédéfinies
Définir ses propres annotations
Exemples d'utilisation
Programmation par aspects (AOP)
Principes de l'AOP
Programmer par aspects
Les tisseurs d'aspects Java
Agent de Java
Les aspects dans le profiling
Profiling et optimisation
Stratégie d'optimisation
Techniques d'optimisation
Optimisations par le compilateur et la JVM, JIT
Coût des opérations Java
Diagnostics et profiling
Téléchargement