Java moderne : apprendre la programmation objet
Apprendre Java moderne : classes, héritage, interfaces, collections, exceptions, fichiers et concurrence.
- Durée
- 35 h · 5 jours
- Niveau
- Intermédiaire
- Format
- Présentiel · Distanciel · Mixte
- Effectif max.
- 12 participants
Présentation
Ce programme apprend à programmer en Java moderne. Les participants construisent leurs premières classes, maîtrisent héritage, polymorphisme et interfaces, découvrent les apports récents du langage (records, classes scellées, filtrage par motif), utilisent collections, expressions lambda et exceptions, puis abordent entrées/sorties et concurrence. Chaque notion est mise en œuvre sur une application fil rouge.
À qui s’adresse ce programme
- Développeurs qui passent à Java
- Étudiants et reconversions
- Équipes qui préparent une montée en compétence vers Spring ou Jakarta EE
Prérequis
- Notions de programmation objet
- Avoir déjà développé dans un langage
Objectifs pédagogiques
- Utiliser Java comme langage objet
- Structurer son code en classes, packages et records
- Appliquer héritage, polymorphisme, interfaces et classes scellées
- Manipuler collections, énumérations et lambdas
- Gérer les exceptions
- Lire et écrire des fichiers
- Comprendre threads et concurrence
Programme détaillé
10 modules · 35 h · 5 jours
Écosystème Java et premiers pas
- Plateforme, versions et distributions
- Compiler, exécuter, packager
- Syntaxe de base
- Types, opérateurs et structures de contrôle
- IDE et débogage
Classes et objets
- Classes, attributs et méthodes
- Constructeurs et packages
- Encapsulation
- Records
- Méthodes statiques et immuabilité
Modéliser les premières classes de l’application.
Héritage et polymorphisme
- Héritage et redéfinition
- Classes abstraites
- Interfaces et méthodes par défaut
- Polymorphisme
- Classes scellées
Conception et bonnes pratiques
- Composition ou héritage
- Principes SOLID appliqués
- Gestion des dépendances
- Tests unitaires avec JUnit
- Conventions de code
Améliorer la structure du fil rouge.
Collections, énumérations et lambdas
- Listes, ensembles, tables associatives
- Énumérations
- Classes internes et anonymes
- Expressions lambda et interfaces fonctionnelles
- Introduction aux flux (Streams)
Tableaux, génériques et filtrage par motif
- Tableaux
- Génériques
- Comparaisons et tris
- Filtrage par motif
- Optional
Traiter un jeu de données avec collections et flux.
Exceptions
- Hiérarchie des exceptions
- try / catch / finally
- try-with-resources
- Exceptions personnalisées
- Journalisation
Apports des versions récentes
- Fichiers avec NIO2
- Dates et heures
- API Process
- Blocs de texte et formatage
- Nouveautés des dernières versions
Écrire un utilitaire qui lit des fichiers et lance un processus.
Entrées/sorties de données
- Fichiers plats, CSV, Excel
- Sérialisation
- Lire et écrire du JSON
- Gestion des encodages
- Robustesse des traitements
Threads, concurrence et synthèse
- Threads et exécuteurs
- Synchronisation et pièges
- Threads virtuels
- Assemblage de l’application fil rouge
- Bilan
Finaliser et présenter l’application.
Outils et technologies
Méthodes pédagogiques
- Alternance d’exposés courts et de travaux pratiques
- Démonstrations en direct par le formateur
- Projet fil rouge construit au fil des modules
- Corrections collectives et échanges sur les bonnes pratiques
Évaluation
- Exercices pratiques corrigés à chaque module
- Mini-projet réalisé en fin de formation
- Quiz de validation des acquis
Matériel requis
- Un ordinateur avec une connexion internet
- JDK récent, Maven ou Gradle et un IDE Java
Ressources fournies
- Support de cours et dépôt d’exercices corrigés
Débouchés
- Une application Java structurée et testée
- Un socle pour Spring, Jakarta EE ou Android
- Les bonnes pratiques de l’écosystème
Les cours vidéo associés
Mes cours en vidéo qui accompagnent ce programme : pour préparer la formation ou réviser ensuite. Accès gratuit avec un compte.

