Introduction à la formation Java Perfectionnement
Révision des concepts de base en Java : variables, types, collections, POO
Vue d’ensemble du programme de formation Java Perfectionnement, objectifs pédagogiques
Programmation orientée objet avancée
Les classes internes et anonymes : définition, utilisation, cas d’usage
Utilisation avancée des interfaces et des classes abstraites : méthodes par défaut, classes abstraites vs interfaces
Exemple de cas pratiques : implémentation d’une liste chaînée avec interfaces, classes interne et évolution de l’API d’utilisation avec les méthodes par défaut
Bibliothèques Java standard
Java I/O : Streams, Readers et Writers, Files et Paths, Serialization et Deserialization
Java Network : Sockets, URL et URI, Protocoles réseau, HttpUrlConnection
Java Concurrency : Threads
Exemples de cas pratiques : création d’une application client-serveur avec des sockets
Programmation fonctionnelle en Java
Lambdas et les références de méthode : syntaxe, utilisation avec les interfaces fonctionnelles
Présentation de la classe Optional
Utiliser les Streams pour le traitement de données : opérations intermédiaires et terminales, parallélisation
Exemple de cas pratiques : utilisation des lambdas et des streams pour traiter une grande collection de données
Développement d’applications Java EE
Servlets, JSP, JPA : cycle de vie, déploiement, persistance des données
Introduction à Spring et Spring Boot : injection de dépendance, création de beans, configuration
Exemple de cas pratiques : création d’une application web avec Spring Boot
Web Services REST
Les principes des Web Services REST : principes de base, méthodes HTTP, codes de statut
Spring Boot pour créer des web services REST : création de contrôleurs, gestion des erreurs
Exemple de cas pratiques : création d’un web service REST pour gérer un carnet d’adresses
Tests
JUnit pour les tests unitaires : création de tests, assertions, organisation des tests
Conception et architecture logicielle avancées
Principes SOLID
Les design patterns en Java : Singleton, Builder, Decorator, Observer, Strategy…
L’architecture microservices et son application en Java : avantages, défis, mise en œuvre avec Spring Boot