Objectifs de la formation
Acquérir les compétences et connaissances nécessaires pour maîtriser les fonctionnalités avancées de la plateforme Java Standard Edition.Clientèle visée
Développeurs, concepteurs et architectes techniquesPréalables
Solides bases en POO (héritage, polymorphisme, encapsulation). Bon niveau sur les collections et les génériques. Connaissance du multithreading de base. Lecture/écriture de fichiers et sérialisation d’objets. Familiarité avec les concepts d’architecture logicielle (MVC, couches, modularité). Notions d’utilisation d’un IDE (Eclipse, IntelliJ, VSCode).Formateurs
Gains pour les participants
• Maitriser les concepts et fonctionnalités avancés de Java SE
• Approfondir certains aspects du langage et de ses évolutions (de Java SE 5 à Java SE 8)
• Développer des applications dans des environnements multi threads, concurrents
• Mettre en œuvre différentes communications d’objets
• Maîtriser les API de communication synchrones et asynchrones
• Manipuler la persistance des données avec JPA
• Internationaliser ses applications
• Bénéficier de retours d'expérience sur des problématiques récurrentes
Architecture de la formation
Aspects de la JVM, Java Virtual Machine
• Mécanismes liés à la JVM pour assurer la sécurité
• Modèle de sécurité : permissions, politiques et domaines de sécurité
• Gestionnaire de sécurité et contrôle d’accès
• Les mécanismes de chargement de classes
• Développement de chargeurs de classes spécifiques
Evolutions de la syntaxe Java
• Rappels des évolutions de Java 5 à Java 8
• Structures de contrôles « switch » avec des objets String
• Faciliter la lecture des valeurs littérales
• Traitements des chaînes de caractères et expressions régulières
• T.P.
Rappels des Generics, collections et évolutions
• Les nouvelles collections
• Opérateur diamant et inférence de type
• Suppression possible des avertissements lors de l'utilisation des varargs
Gestion des erreurs
• Rappels des assertions
• Les tests avec Junit
• Prise en compte de plusieurs exceptions dans la clause catch
• Opérateur try-with-resources
• T.P.
La persistance avec Hibernate et JPA
• Rappels de l’accès aux données, JDBC et DAO
• Architecture logicielle d’Hibernate et de JPA
• Architecture Technique d’Hibernate et de JPA
• Mise en place de l'environnement
• Les objets et les différents mappings
• Les langages de requête Hibernate QL et JQPL
• T.P.
Introduction au framework Spring
• Les différents modules de Spring
• L’injection des dépendances (IoC)
• Les pools de connexions et les transactions
• Intégration avec Hibernate
• Spring MVC - Architecture générale : controleurs, Dispatchers et Handlers
• T.P.
La programmation concurrente
• Mise en œuvre des Threads. Cycle de vie des Threads. Ordonnancement des Threads
• La synchronisation des Threads. Le verrouillage des méthodes et des instructions (synchronized). Les moniteurs
• Principes et problèmes de la conception d'applications multi threads
• La librairie concurrente. Les nouvelles collections
• Les nouveaux outils de synchronisation : les verrous partagés/exclusifs, les sémaphores, les barrières cycliques
• L’utilisation du framework Fork/Join
• La Classe Phaser
• T.P.
La programmation réflexive
• Objectifs et principes
• Le chargement de classes. L'objet Class
• Découverte dynamique des informations (propriétés et méthodes) relatives à une classe ou à un objet
• Instanciation dynamique
• Invoquer une méthode
• La réflexivité des annotations
Présentation de la programmation fonctionnelle
• Objectifs et principes
• Expressions Lambda
• Interfaces fonctionnelles
• T.P.
La communication par messages JMS (Java Message Service)
• Présentation de l'Architecture MQ et JMS : Files Topics, Queues, Serveurs MQ
• Communication Point-To-point avec les Queues
• Communication Publish/Subscribe avec les Topics
• T.P.
Détails pédagogiques
Type de cours
Formation en entreprise
Toutes nos formations peuvent être offertes en entreprise et personnalisées selon vos besoins. Pour plus d'information, nous vous invitons à communiquer avec nous ou à remplir une demande de soumission en ligne.
Demander une soumissionFormation en entreprise
Toutes nos formations peuvent être offertes en entreprise et personnalisées selon vos besoins. Pour plus d'information, nous vous invitons à communiquer avec nous ou à remplir une demande de soumission en ligne.
Demander une soumission