Développeurs Java
The content of this page is not available in English
Avoir suivi le stage "Java initiation+approfondissement" ou posséder les connaissances équivalentes
Connaître et maîtriser les concepts avancés du langage.
Disparition du permgen spaceMéthodes par défautAnnotationsrépétées, annotations de type Références de méthodes, Interface avec méthodes defaultMéthodes privées d'interfaceLibération de ressourcesL'API CompletableFutureAméliorations du garbage collectorModularité du jdk
Atelier: Installation de l'environnement - démonstration des fonctionnalités - profiling de code et amélioration des performances.
Manipuler des dates et durées avec la nouvelle API timeFaiblesses de la bibliothèque actuelleNouvelles classes et interfacesChoix technique entre durées, instants et dates localesGestion des fuseaux horairesFormatage
Atelier: Utilisation et formatage de dates, opérations sur des dates et des durées
Expressions lambda: définition, intérêtRègles d'écritures, déclarationsInterface fonctionnelle: principe, compatibilitéAccès à l’état englobant d’une expression lambdaImplémentation et performances. Évolutions de l'API Collection
Atelier: utilisation des nouveaux patterns et interfaces fonctionnelles introduites depuis Java 8
Nouvelles fonctionnalitésUtilisation de Patterns for-each, replace-if, do-if-absent, do-if-present Fusions de collectionsAPI Stream: principe, intérêtPatterns de création de streamsOpérations intermédiaires et terminales sur les streamsGestion des cas spécifiques: streams vides, optionalUtilisation de parallel streams
Atelier: utilisation des streams avec différents collectors - exploitation de ressources avec les parallel streams - utilisation de patterns
Généricité: principe de typage, usagesClasses génériques et contraintes sur les typesImplémentation de méthodes génériquesInterfaces génériques et polymorphismeRéflexion et classes disponiblesIntrospection dynamique d'objetsInvocation de membres d'un objetInstanciation dynamique d'objets
Atelier: écriture de méthodes génériques pour gérer des imports/exports et des sérialisations de données - Patterns et généricité
Nashorn: présentation, cas d'usageLigne de commande jjsInterprétation de code JavaScriptAppel de code Java depuis du JavaScript
Atelier: Instanciation et utilisation du moteur Nashorn, utilisation d'objets Java en JavaScript - appel de fonctions Javascript et gestion des paramètres
Insanciation de processusProcessHandle et ProcessHandle.infL'API de concurrence: différents types d'ExecutorsChoix des interfaces Runnable, Future, CallableApplication de multithreading et utilisation d'expressions LambdaComposableFutureGestion du mode asynchrone et du timeoutFiles d'attente et classes atomicGestion des pools de threads
Atelier: Codage de tâches planifiées à l'aide d'executors - implémentation multi-tâches avec l'utilisation de threads et synchronisation
Méthodologie basée sur l'Active Learning : 75% de pratique minimum. Chaque point théorique est systématiquement suivi d'exemples et exercices.
Contrôle continu
Attestation de fin de stage mentionnant le résultat des acquis