Optimisation Java, multi-threading et gestion de mémoire (niv.2

// JAVA & FRAMEWORKS
Inscription et informations :
Paris 01 56 56 71 00 / Région 04 72 33 78 30
Objectifs :
Présentation de la formation :
Code stage :
Public :
Prérequis :
Pédagogie :
Sessions
Paris :
Lyon :
Grenoble :
Toulouse :
15 – 16 jan, 25 – 26 juin, 10 – 11 oct, 10 – 11 déc
5 – 6 fév, 4 – 5 juin, 15 – 16 oct
26 – 27 mars, 9 – 10 juil, 3 – 4 déc
11 – 12 mai, 24 – 25 sept
Programme détaillé:
Introduction au multi-threading
- Threads et processus
- Changements de contexte et conséquences
- Threads et Java
- Effets et dangers du parallélisme
- Accès concurrent
- Race condition
La synchronisation en Java
- Le mot-clé synchronized, la règle d’or
- Synchronized et méthode statique
- Barrière mémoire
- Erreurs classiques
- Le mot-clé volatile
- Les dangers liés à la synchronisation
- Deadlock et comment les éviter
- Autres dangers de la synchronisation
Coordination des threads: mécanismes de bas niveau
- Wait, notify, sleep
- Interruption, join
- Interruption et IO
- Thread démon
- Shutdown hook
Thread safety et bonnes pratiques de développement
- Immuabilité
- Les pièges à éviter
- Immuabilité effective
- Publications propres
- Objets mutables, Encapsulation, Confinement
Abstractions de plus haut niveau
- Collections synchronisées, collections concurrentes
- Atomics
- Lock, Sémaphore
- CountDownLatch
- BlockingQueue
- Pooling de threads
Les ClassLoaders
- Hiérarchie des ClassLoaders
- Le ClassLoader dans JEE
- Charger une ressource
- Utiliser et créer son propre ClassLoader
Le fonctionnement du Garbage Collector
- Différents types de gestion mémoire
- Le rôle du Garbage Collector
- Fonctionnement du Garbage Collector
- Garbage Collectors générationnels
- Garbage Collector et fuites mémoires
APIs de référence
- Références et interraction avec le Garbage Collector
- Gestion de caches
- Fuites mémoires
- Finalisation des objets: améliorations & performances
Optimisation Java, multi-threading et gestion de mémoire (niv.2)
L’objet de cette formation est de maîtriser par la pratique les
concepts et fonctionnalités avancées parmi lesquelles:
Comment fonctionne le multi-threading
Savoir quand utiliser le multi-threading et quand l’éviter
Connaître les bonnes pratiques pour éviter les pièges comme les
deadlocks ou la corruption mémoire
Savoir utiliser les outils de base de Java pour gérer les threads et la
concurrence d’accès
Savoir utiliser les composants de plus haut niveau du JDK 5 pour
gérer le multi-threading
Comprendre comment et depuis où sont chargées les classes
d’une application
Comprendre la façon dont la JVM gère sa mémoire
Comprendre le fonctionnement des Garbage Collector
générationnels
Éviter les fuites mémoires
Utiliser les APIs de références pour gérer la mémoire et interagir
avec le Garbage Collector
Toutes les applications Java utilisent les mécanismes avancés
de la plateforme Java.
Que vous développiez des applications de type web, client riche, et même
mobile avec Android, vous serez confronté à des problématiques de multi-
threading, de performance, et de consommation mémoire.
De la même manière, la maîtrise complète de nombreux frameworks
nécessite de comprendre le fonctionnement de la plateforme et de son
mécanisme de chargement dynamique des classes.
La compréhension de ces mécanismes vous apportera souvent la clé
pour comprendre le fonctionnement de vos applications et optimiser leurs
performances.
60% de travaux pratiques
Maîtrise du langage Java
JMT
Développeur et chef de projet technique
Prix 2015 Interentreprises: 1250€ HT
Durée: 2 jours
1 / 1 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !