Formation Certification Java 7 niveau 2 - Certified Professional Java SE 7
Objectifs de la formation Certification Java
La certification Oracle Certified Professional, Java SE 7 Programmer (1Z0-804) certifie que son titulaire maîtrise parfaitement la syntaxe de Java 7 et les concepts objets qui lui sont rattachés.
L'examen de certification, comportant 90 questions et d'une durée de deux heures trente minutes, est réputé difficile et nécessite une bonne préparation sur tous les thèmes abordés, même pour un développeur Java confirmé.
Concrètement l'objectif est de mettre le candidat dans les meilleures dispositions possibles en vue de l'examen de certification java, il s'agit d'un cours intensif ou le bachotage est parfois de rigueur pour éviter entre autres les pièges classiques sur certaines questions.
Au-delà de la certification Java cette formation permet également de compléter les connaissances en Java du candidat et met l'accent sur des points délicats du langage. Le participant pourra ainsi véritablement valider sa maîtrise du langage Java.
Contenu du cours Certification Java
Conception de classes Java
Utiliser les spécificateurs d'accès: private, protected, et publicRedéfinir les méthodesSurcharger les méthodes et les constructeursUtiliser l'opérateur instanceof et les transtypagesInvoquer les méthodes virtuellesRedéfinir les méthodes hashCode, equals, et toString de la classe Object pour améliorer les fonctionnalités d'une classeUtiliser les instructions package et importTravaux Pratiques : Test blanc et corrigé du test
Conception avancée de classes
Identifier quand et comment appliquer les classes abstraitesConstruire des classes abstraites et des sous-classesUtiliser les mots-clés static et finalCréer des classes englobantes et emboîtéesUtiliser les types énumérésTravaux Pratiques : Test blanc et corrigé du test
Principes de la conception orientée objet
Ecrire du code qui déclare, implémente et/ou hérite d'interfacesChoisir entre l'héritage d'interfaces et celui de classesAppliquer les principes de cohésion, de faible couplage, relation EST-IN, relation A-UNAppliquer les principes de la composition d'objetsConcevoir une classe qui utilise le design pattern SingletonEcrire du code qui implémente le design pattern Data Access Object (DAO)Concevoir et créer des objets en utilisant le pattern FactoryTravaux Pratiques : Test blanc et corrigé du test
Collections et généricité
Créer une classe génériqueUtiliser le diamant (<> ) pour déduire le type paramétréAnalyser l'interopérabilité des collections qui utilisent la généricité avec celles qui ne l'utilisent pasUtiliser les classes enveloppes, et l'autoboxingCréer et utiliser les implémentations de List, Set et DequeCréer et utiliser les implémentations de MapUtiliser java.util.Comparator et java.lang.ComparableTrier et rechercher dans les tableaux et les listesTravaux Pratiques : Test blanc et corrigé du test
Traitement sur les chaînes de caractères
Rechercher, analyser et créer des chaînes de caractères (en utilisant Scanner, StringTokenizer, StringBuilder, String et Formatter)Rechercher, analyser et remplacer des chaînes de caractères au moyen d'expressions régulières, en utilisant le jeu de caractères: . (point), * (astérisque), + (plus), ?, d, D, s, S, w, W, b. B, [], ().Formater les chaînes de caractères en utilisant les paramètres de formatage: %b, %c, %d, %f, et %s.Travaux Pratiques : Test blanc et corrigé du test
Exceptions et Assertions
Utiliser les instructions throw et throwsGèrer plusieurs types d'exceptions dans un seul bloc catchDévelopper du code qui utilise l'instruction try-avec-ressources (y compris en utilisant des classes qui implémentent l'interface AutoCloseable)Créer des exceptions personnaliséesTester les invariants au moyens d'assertionsTravaux Pratiques : Test blanc et corrigé du test
Entrées/sorties de base
Lire et écrire des données sur la consoleUtiliser les flux pour lire ou écrire dans des fichiers en utilisant des classes du package java.io, notamment BufferedReader, BufferedWriter, File, FileReader, FileWriter, DataInputStream, DataOutputStream, ObjectOutputStream, ObjectInputStream, et PrintWriterTravaux Pratiques : Test blanc et corrigé du test
Entrées/sorties sur fichiers (NIO.2)
Manipuler les chemins des fichiers et répertoires au moyen de la classe PathContrôler, supprimer, copierCheck, delete, copy, ou déplacer un fichier ou un répertoire avec la classe FileLire et modifier les attributs de fichiers ou répertoires, notamment ceux du type BasicFileAttributes, DosFileAttributes, et PosixFileAttributesAccéder récursivement à une arborescence en utilisant les interfaces DirectoryStream et FileVisitorTrouver un fichier avec l'interface PathMatcherSurveiller les modifications dans un répertoire avec l'interface WatchServiceTravaux Pratiques : Test blanc et corrigé du test
Applications d'accès aux bases de données avec JDBC
Décrire les interfaces qui constituent le cœur des API JDBC (notamment les interfaces Driver, Connection, Statement, et ResultSet et leur relation avec les implémentations des fournisseurs)Identifier les composants nécessaires pour se connecter avec une base de données en utilisant la classe DriverManager (ainsi que l'URL jdbc)Soumettre des requêtes et lire les résultats de la base de données (création des états, reour des résultats, parcours des résultats, fermeture des résultats, des états et des connexions)Utiliser les transactions JDBC (y compris désactiver le mode auto-commit, commiter et effectuer un rollback des transactions, et enregistrer des points de sauvegarde)Construire et utiliser des objets RowSet en utilisant la classe RowSetProvider et l'interface RowSetFactoryCréer et utiliser les objets PreparedStatement et CallableStatementTravaux Pratiques : Test blanc et corrigé du test
Les threads
Créer et utiliser la classe Thread et l'interface Runnable interfaceGérer et contrôler le cycle de vie des threadsSynchroniser l'accès des threads à des données partagéesIdentifier du code qui pourrait ne pas s'exécuter correctement dans un environnement multi-threadsTravaux Pratiques : Test blanc et corrigé du test
Les accès concurrents
Utiliser les collections du package java.util.concurrent en mettant en avant leurs avantages et leurs différences avec les collections classiques du package java.utilUtiliser les classes Lock, ReadWriteLock, et ReentrantLock dans le package java.util.concurrent.locks afin de supporter la programmation thread-safe sur les variables simplesUtiliser Executor, ExecutorService, Executors, Callable, et Future afin d'exécuter des tâches avec l'appui des pools de threadsUtiliser le framework Fork/JoinTravaux Pratiques : Test blanc et corrigé du test
Internationalisation
Lire et configurer la langue avec un objet LocaleConstruire un resource bundle pour chaque langueAppeler un resource bundle depuis une applicationFormater les dates, nombres, et valeurs monétaires en fonction de la langue avec les classes NumberFormat et DateFormat (y compris les modèles de formatage de nombres)Décrire les avantages d'internationaliser une applicationDéfinir un objet Locale en utilisant les codes pays et langueTravaux Pratiques : Test blanc et corrigé du test