Module 1 Java OCA/OCP 8 de la formation
INTRODUCTION AUX TECHNOLOGIES JAVA
-
Caractéristiques et particularités du langage Java
-
Les domaines d’application (Application, Applet, Développement Serveur, Androïd, Java Embarqué, etc.)
-
Se repérer dans le vocabulaire (JDK, JRE, JSE, JVM, etc. )
-
Portabilité des programmes Java à travers la JVM
-
Gestion de la mémoire
-
Sécurité et programmes Java
-
Notions de multithreading
-
La place de Java dans les architectures d’applications (n-tiers)
-
Utiliser efficacement la documentation
-
Téléchargement et installation des différents composants nécessaire à la mise en place de l’environnement de développement (JRE, JDK, Eclipse).
Module 2 Java OCA/OCP 8 de la formation
PRISE EN MAIN D’ECLIPSE
-
Liens entre Java et Eclipse
-
Problèmes classiques liés aux environnements 32/64 bits
-
Qu’est-ce qu’un projet pour Eclipse ?
-
Arborescence et chemin d’accès
-
Principe des protections
-
Attributs des fichiers et des répertoires
-
Bien utiliser l’aide en ligne
-
Configuration des exécutions, fonctionnalités du debugger
-
Création d’un projet, importation de sources, génération et complétion de code, refactoring.
-
Exécution à l’aide du debugger
Module 3 Java OCA/OCP 8 de la formation
JAVA ET LA PROGRAMMATION OBJET
-
Présentation des types de données base
-
Déclaration d’une classe et de ses méthodes
-
Instanciation, constructeur
-
Accès aux données par les méthodes
-
Accès aux méthodes
-
Création d’un projet, implémentation des classes d’un petit modèle objet, mise en place de quelques méthodes d’accès aux données, tests
Module 4 Java OCA/OCP 8 de la formation
LA SYNTAXE DU LANGAGE JAVA (VARIABLES, OPÉRATEURS, TESTS, BOUCLE)
-
Structure d’un fichier .java
-
Constructeur et processus d’instanciation, le mot clé static
-
Notion d’identité objet
-
Déclaration de variables et Initialisation
-
Types primitifs et classes du package java.lang
-
Les constantes
-
Opérateurs d’affectation, de comparaison, booléens, ... Instruction de contrôles (if, switch, …)
-
Boucles et itérations
-
Implémentation d’un programme simple mettant en œuvre beaucoup d’éléments de la syntaxe Java afin de disposer d’un code source de « référence ».
Module 5 Java OCA/OCP 8 de la formation
MANIPULATION DES TABLEAUX
-
Quand utiliser un tableau ou une collection (Array, ArrayList)
-
Création et initialisation d’un ArrayListAccès aux éléments (boucles)
-
Algorithme de tri d’une collection permettant de manipuler les tableaux et les collections.
Module 6 Java OCA/OCP 8 de la formation
ASPECTS OBJETS AVANCÉS
-
Java et l’héritage simple
-
La surcharge de méthodes
-
Travailler avec des superclasses et des sous classes
-
Les mots clé final et super
-
Comprendre l’apport des interfaces en Java
-
Créer et utiliser une interface
-
Mise en œuvre d’un exemple évolutif (« mal » conçu volontairement au début) amenant les participants à comprendre l’apport des interfaces et de l’héritage.
Module 7 Java OCA/OCP 8 de la formation
GESTION DES ERREURS (EXCEPTIONS)
-
Comprendre les différents types d’erreurs en Java
-
Quel mécanisme est proposé par Java pour les gérer ?
-
Utiliser la documentation pour retrouver les exceptions des méthodes des classes de base
-
Implémenter la gestion des exceptions en Java
-
Ecriture d’un programme générant des erreurs mais sans prise en charge des exceptions.
-
Modification du code pour les prendre en charge.
Module 8 Java OCA/OCP 8 de la formation
LES PACKAGES JAVA
-
Qu’est-ce qu’un package pour Java ?
-
Organisation hiérarchique des packages
-
La variable CLASSPATH
-
Convention de nommage des packages
-
Les fichiers .jar
-
Liens entre répertoire, espace de nommage, et packages
-
Créer son propre package (convention de contenu)
-
Import et export de packages
Module 9 Java OCA/OCP 8 de la formation
UTILISATION DE QUELQUES API JAVA
-
Utilisation de la classe StringBuilder et de ses méthodes
-
Créations et manipulations de Strings (chaînes de caractères)
-
Créer et manipuler des données calendaires avec les classes java.time.LocalDateTime, java.time.LocalDate, java.time.LocalTime, java.time.format.DateTimeFormatter, java.time.Period
-
Ecrire une expression lambda simple
Module 10 Java OCA/OCP 8 de la formation
PRÉPARATION À LA CERTIFICATION JAVA 8
-
Synthèses des questions récurrentes
-
Trucs et Astuces (par exemple les questions auxquelles ne pas répondre pour ne pas perdre de temps)
-
Exemples d’examen blanc
-
JAVA OCP
Module 11 Java OCA/OCP 8 de la formation
CONCEPTION DE CLASSES JAVA
-
Utiliser les spécificateurs d’accès : private, protected, et public
-
Redéfinir les méthodes
-
Surcharger les méthodes et les constructeurs
-
Utiliser l’opérateur instanceof et les transtypages
-
Invoquer les méthodes virtuelles
-
Redéfinir les méthodes hashCode, equals, et toString de la classe Object pour améliorer les fonctionnalités d’une classe
-
Utiliser les instructions package et import
-
Travaux Pratiques : Test blanc et corrigé du test
Module 12 Java OCA/OCP 8 de la formation
CONCEPTION AVANCÉE DE CLASSES
-
Identifier quand et comment appliquer les classes abstraites
-
Construire des classes abstraites et des sous-classes
-
Utiliser les mots-clés static et final
-
Créer des classes englobantes et emboîtées
-
Utiliser les types énumérés
-
Travaux Pratiques : Test blanc et corrigé du test
Module 13 Java OCA/OCP 8 de la formation
PRINCIPES DE LA CONCEPTION ORIENTÉE OBJET
-
Ecrire du code qui déclare, implémente et/ou hérite d’interfaces
-
Choisir entre l’héritage d’interfaces et celui de classes
-
Appliquer les principes de cohésion, de faible couplage, relation EST-IN, relation A-UN
-
Appliquer les principes de la composition d’objets
-
Concevoir une classe qui utilise le design pattern Singleton
-
Ecrire du code qui implémente le design pattern Data Access Object (DAO)
-
Concevoir et créer des objets en utilisant le pattern Factory
-
Travaux Pratiques : Test blanc et corrigé du test
Module 14 Java OCA/OCP 8 de la formation
COLLECTIONS ET GÉNÉRICITÉ
-
Créer une classe générique
-
Utiliser 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 pas
-
Utiliser les classes enveloppes, et l’autoboxing
-
Créer et utiliser les implémentations de List, Set et Deque
-
Créer et utiliser les implémentations de Map
-
Utiliser java.util.Comparator et java.lang.Comparable
-
Trier et rechercher dans les tableaux et les listes
-
Travaux Pratiques : Test blanc et corrigé du test
Module 15 Java OCA/OCP 8 de la formation
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
Module 16 Java OCA/OCP 8 de la formation
EXCEPTIONS ET ASSERTIONS
-
Utiliser les instructions throw et throws
-
Gérer plusieurs types d’exceptions dans un seul bloc catch
-
Dé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ées
-
Tester les invariants au moyens d’assertions
-
Travaux Pratiques : Test blanc et corrigé du test
Module 17 Java OCA/OCP 8 de la formation
ENTRÉES/SORTIES DE BASE
-
Lire et écrire des données sur la console
-
Utiliser 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 PrintWriter
-
Travaux Pratiques : Test blanc et corrigé du test
Module 18 Java OCA/OCP 8 de la formation
ENTRÉES/SORTIES SUR FICHIERS (NIO.2)
-
Manipuler les chemins des fichiers et répertoires au moyen de la classe Path
-
Contrôler, supprimer, copierCheck, delete, copy, ou déplacer un fichier ou un répertoire avec la classe File
-
Lire et modifier les attributs de fichiers ou répertoires, notamment ceux du type BasicFileAttributes, DosFileAttributes, et PosixFileAttributes
-
Accéder récursivement à une arborescence en utilisant les interfaces DirectoryStream et FileVisitor
-
Trouver un fichier avec l’interface PathMatcher
-
Surveiller les modifications dans un répertoire avec l’interface WatchService
-
Travaux Pratiques : Test blanc et corrigé du test
Module 19 Java OCA/OCP 8 de la formation
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 RowSetFactory
-
Créer et utiliser les objets PreparedStatement et CallableStatement
-
Travaux Pratiques : Test blanc et corrigé du test
Module 20 Java OCA/OCP 8 de la formation
LES THREADS
-
Créer et utiliser la classe Thread et l’interface Runnable interface
-
Gérer et contrôler le cycle de vie des threads
-
Synchroniser l’accès des threads à des données partagées
-
Identifier du code qui pourrait ne pas s’exécuter correctement dans un environnement multi-threads
-
Travaux Pratiques : Test blanc et corrigé du test
Module 21 Java OCA/OCP 8 de la formation
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.util
-
Utiliser les classes Lock, ReadWriteLock, et ReentrantLock dans le package java.util.concurrent.locks afin de supporter la programmation thread-safe sur les variables simples
-
Utiliser Executor, ExecutorService, Executors, Callable, et Future afin d’exécuter des tâches avec l’appui des pools de threads
-
Utiliser le framework Fork/Join
-
Travaux Pratiques : Test blanc et corrigé du test
Module 22 Java OCA/OCP 8 de la formation
INTERNATIONALISATION
-
Lire et configurer la langue avec un objet Locale
-
Construire un resource bundle pour chaque langue
-
Appeler un resource bundle depuis une application
-
Formater 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 application
-
Définir un objet Locale en utilisant les codes pays et langue
-
Travaux Pratiques : Test blanc et corrigé du test