-
Optimisation du code Java : structures et patterns
Choisir les bonnes structures de données
Complexité algorithmique et impact sur les performances
Éviter les allocations inutiles, immutabilité, pattern builder
Utilisation des Streams de manière efficiente
Travaux pratiques
Comparer la performance de plusieurs structures (ArrayList vs LinkedList) sur un cas de traitement de données volumineuses.
-
Gestion mémoire et tuning JVM
Fonctionnement de la JVM
Garbage Collector : types, tuning basique
Profiling mémoire avec VisualVM ou JMC
Fuites mémoire et outils de détection
Travaux pratiques
Analyser une application Java avec VisualVM, identifier une fuite mémoire, puis la corriger.
-
Concurrence, multithreading & synchronisation
Threads, Runnable, Callable, ExecutorService
Blocage, synchronisation, synchronized, ReentrantLock, Atomic
Collections thread-safe
Introduction à CompletableFuture
Travaux pratiques
Créer une application multithreadée de traitement de fichiers avec file d’attente et pool de threads.
-
Monitoring, logs & outils de diagnostic
Mise en place d’un système de log performant
Bonnes pratiques : niveaux, formats, fichiers
Intégration de métriques (Micrometer + console)
Outils de monitoring en production
Travaux pratiques
Configurer un logger multi-niveaux et mesurer le temps d’exécution d’une opération.
Maîtriser Streams et expressions lambda.
Gérer le multithreading (ExecutorService, synchronisation).
Optimiser et diagnostiquer les performances.
Ce que vous allez apprendre
-
Rapport de comparaison + justification du choix de la structure.
-
Comprendre l’allocation mémoire et prévenir les fuites.
-
Gérer efficacement la concurrence pour améliorer la performance en parallèle.
-
Tracer efficacement le comportement d'une application sans l'alourdir.
Modalités d'évaluation
Evaluation de la progression en cours de formation à l'aide de cas pratiques, mises en situation, QCM…
Test de positionnement en amont et en aval afin de valider les compétences acquises.
Accessibilité
Toutes nos formations sont accessibles aux personnes en situation de handicap.
Pour plus de renseignements, n'hésitez pas à nous contacter.
Modalités pédagogiques
- Méthodes : Expositive, démonstrative et active
- Moyens : Cas pratique, mise en situation
- Ressources : Support de cours et Programme de formation
- Moyens techniques : Teams