Programmation pour Développeur Confirmé
Objectifs de la formation
- seconde formation du cursus Java SE 8, cette formation java permet d'exploiter les concepts spécifiques au développement d’applications orientées objet avec Java (design patterns, best practices…), les API du noyau Java SE, JDBC pour l'accès aux bases de données et la programmation multi-thread
Contenu du cours
Point sur la plateforme Java
Rappel de syntaxe Java
Expressions arithmétiques et logiques simples, Instructions, tests et boucles
Utiliser les types énumérés
Programmation objet avec Java
Attributs, méthodes et constructeurs
Variables et méthodes de classe (static)
Surcharge de méthodes
L’attribut this
Encapsulation : getter et setter
Responsabilité, règles de visibilité, packages
Héritage
Sous-classe, spécialisation des méthodes
Polymorphisme, forçage de type
Opérateur instanceof
L’attribut super
La classe Object
Conception avancée
Classes abstraites
Conception avec des interfaces
Classes internes
Pattern singleton
Objets immuables
Composition et délégation
Programmation générique et collections
Notion de type paramétré
Exemple avec les collections
Catégories de collections : List, Set et Map
Itération sur une collection
Traitement des chaînes de caractères
Manipulation des chaines de caractères avec StringBuilder et StringBuffer
Recherches de caractères, formatage
Expressions régulières avec les classes Pattern et Matcher
Traitement des erreurs
Mécanisme de gestion des exceptions : clauses try, catch et finally
Utilisation de l'interface AutoCloseable
Catégories d'exceptions
Propagation des exceptions
Multi-catch
Créer des exceptions applicatives
Activer des assertions
Transférer des données en utilisant les flux d'E/S
Lire et écrire dans la console
Lire et écrire dans un fichier, sérialiser des objets
Accéder au système de fichiers avec les NIO 2
L’interface Path
La classe Files
Opérations sur les répertoires et fichiers
Lire et écrire dans des fichiers
Le multi-tâche
Lancer un thread en Java
Problématiques de la programmation multitâche (synchronisation…)
Créer des variables atomiques
Utiliser des Read-Write Locks
Collections Thread-safe
Concurrent Synchronizers (Semaphore, Phaser…)
Executors et ThreadPools
Accès aux bases de données avec JDBC
Utilisation de l'API JDBC, des pilotes JDBC
PreparedStatement et CallableStatement
Requêtes
Les transactions
Utilisation des RowSet
Le pattern DAO
Internationalisation d’une application
Définir la locale
Gérer des messages dans des ResourceBundle
Formater des dates et des nombres