Logo de l'organisme de formation

La formation au coeur de l'avenir technologique

Représentation de la formation : Java - Programmation multithread

Java - Programmation multithread

Formation à distance
Durée : 28 heures (4 jours)
Durée :28 heures (4 jours)
HT
Se préinscrire
Durée :28 heures (4 jours)
HT
Se préinscrire
Durée :28 heures (4 jours)
HT
Se préinscrire

Formation créée le 10/01/2023. Dernière mise à jour le 20/03/2023.

Version du programme : 1

Programme de la formation

Objectif de formation : Obtenir une expertise sur le développement Java

Objectifs de la formation

  • Comprendre les modèles de programmation multithread & les librairies standards correspondantes
  • Appréhender les structures de données basiques employées pour la programmation multithread
  • Maîtriser les principaux bugs & détenir un aperçu des solutions
  • Maîtriser les outils de test & débogage
  • Connaître les liens entre la programmation multithread & les performances

Profil des bénéficiaires

Pour qui
  • Développeurs
  • Architectes logiciels
  • Chefs de projets
Prérequis
  • Notions en Java
  • Connaissances sur l'utilisation d'un IDE

Contenu de la formation

  • Premiers pas avec la programmation multithread : modèles, interfaces & classes de programmation
    • Notions de base
    • Mises en œuvre des concepts
    • Exceptions non catchées & groupes de threads
    • Futur complétable
    • Travaux pratiques : Programmation d’une application combinant les différents modèles.
  • Impératif sur le fonctionnement naturel des activités
    • Tour d'horizon des méthodes formelles de spécifications
    • Méthode semi-formelle de spécification
    • Mise en place des spécifications
    • Travaux pratiques : utilisation de méthodes formelles de spécifications
  • Synchronisation & communication des threads
    • Présentation des status "synchronized", "wait", "notify" & la programmation de moniteurs
    • Interfaces & classes de synchronisation
    • Queue
    • Travaux pratiques : mise en oeuvre des interfaces et classes de synchronisation
  • Déploiement de tâches en parallèle
    • ExecutorService
    • Modèle fork/join
    • Travaux pratiques : mise en oeuvre des services d’exécution et du modèle fork/join
  • Structures de données dédiées à la programmation multithread
    • Collections spécialisées
    • Stockage local des données de thread
    • Classes Atomic
    • Travaux pratiques : mise en oeuvre des structures de données
  • Threads & performances
    • Modification de la performance suite à la création de threads
    • Modification de la performance suite à la synchronisation
    • Modification de la performance dûe à la caches mémoire
    • Threads et les IO, les BD et le graphique
    • Threads & ordonnancement
    • Travaux pratiques : Optimisation des programmes
  • Modèles alternatifs
    • Modèles asynchrones
    • Modèles d'acteurs
    • Modèles réactifs synchrones
  • Outils liés à la création de programmes concurrents
    • JConsole & jstack
    • Librairie JArmus
    • Logique temporelle de Lamport
    • Tour d'horizon des erreurs courantes
Équipe pédagogique

Professionnel expert technique et pédagogique.

Suivi de l'exécution et évaluation des résultats
  • Émargement numérique
  • Mises en situation
  • Formulaires d’évaluation de la formation
  • Certificat de réalisation de l’action de formation
Ressources techniques et pédagogiques
  • Espace intranet de formation
  • Documents supports de formation projetés
  • Exposés théoriques
  • Étude de cas concrets
  • Mise à disposition en ligne de documents supports à la suite de la formation

Qualité et satisfaction

Taux de satisfaction des apprenants, nombre d'apprenants, taux et causes des abandons, taux de retour des enquêtes, taux d'interruption en cours de prestation...