MasterClass Expertise Java Core par Olivier Croisier
Programme
Jour 1
- Core Java
- De Java 5 à Java 11
- Types primitifs
- Classes et références (strong, soft, weak)
- Classes internes
- Performance des chaînes de caractères
- Gestion des exceptions
- Bonnes pratiques de logging
- Lambdas et streams
- Principes de programmation fonctionnelle
- Anatomie d’une expression lambda
- Références de méthodes
- Méthodes par défaut
- Programmation orientée ‘trait’
- Notion de Stream
- Générateurs de données
- Transformation et filtrage
- Collecteurs et opérations terminales
Jour 2
- Types paramétrés (“Generics”)
- Historique
- Comprendre et utiliser les types paramétrés
- Développer un type paramétré
- Implémentation technique et limites
- Types paramétrés et tableaux
- Réflexion sur les types paramétrés
- Design patterns spécifiques
- Structures de données
- Comprendre Equals et HashCode
- Comparaison et tri des données
- Le framework Collections
- Patterns d’itération
- Recherche efficace
- Bonnes pratiques
- Autres structures de données
Jour 3
- I/O & Encodage
- Architecture de java.io
- Le design-pattern Décorateur
- Encodage : de ASCII à Unicode/UTF-*
- L’API NIO2 (optionnel)
- Gestion des ressources et bonnes pratiques
- Annotations
- Historique
- Syntaxe et utilisation
- Annotations personnalisées
- Annotation processors
- Réflexion
- Réflexion et Annotations
- Méta–programmation : la classe Class
- Fonctionnement des classloaders
- Instanciation dynamique d’une classe
- Manipulation des méthodes & champs
- Proxies dynamiques
- Frameworking