Référence | F174948 |
Prix par personne en présentiel ou distanciel | 2750 € |
Session ouverte | A partir de 2 personnes |
Intra-entreprise | Nous consulter |
Public concerné : Développeurs Java
Durée : 5 jours
Prérequis : Avoir suivi la formation « Java SE – Fondamentaux du développement Java SE » ou posséder une connaissance de Java.
Objectifs :
Construire une application complexe
Assimiler les subtilités et risques du langage
Ecrire un code performant et réutilisable
Etre à jour des nouveautés du langage
Méthodes et moyens pédagogiques : Formation réalisée en présentiel ou en distanciel (Choix à définir). Exposés, cas pratiques, synthèse. Matériel : 1 poste par stagiaire, vidéoprojecteur, tableau.
Support de cours fourni à chaque stagiaire.
Modalités de suivi et d’évaluation : Exercices de mise en pratique ou quiz de connaissances tout au long de la formation permettant de mesurer la progression des stagiaires. Questionnaire d’évaluation de la satisfaction en fin de stage. Feuille de présence émargée par demi-journée par les stagiaires et le formateur. Attestation de fin de formation.
Informations pratiques : Accessibilité , modalités et délais d’accès
Contenu de formation :
Le langage Java :
Naissance de Java
Java et le Web
La JVM
Exemple de bytecode
Concepts de base et Concepts avancés
Java les concepts de base :
Les pointeurs
Stack et Heap
Tableaux et les RandomAccess
La boucle For améliorée
Classes, Types et Instances
Autoboxing et performances
Les varargs
Enums complexes
Heritage :
Interfaces
Polymorphisme
Classes et méthodes abstraites
Design Patterns intéressants
Les generics :
Définition des Types
Type Erasure
Lower et Upper Bounds
Covariance and contravariance
Inférence de Type
Méthode générique
Java 8 :
Les Lambdas
Méthodes par défaut des Interfaces
L’api DateTime
Les Optionals
Ce que propose Java 9
Le framework collection avec Java 8 :
Les différentes collections
Les implémentations utiles et méconnues
Utilisation des Streams Java 8
Les annotations :
Annotations standards et Méta-Annotations
Rétention des Annotations
Cible (Target) des Annotations
Les arguments de l’annotation
Lecture par Reflection d’une Annotation
APT : Annotation Processing Tools
Génération de bytecode avec Javassist
L’API de Reflection (introspection) :
Les composants de la Reflection
Instanciations et Appels Dynamiques
Restrictions de Sécurité
Patterns et Anti-Patterns
Lecture des Annotations
Entrées et sorties :
Les flux (ou Streams)
Java SE – Développement avancé
La gestion des fichiers
NIO et NIO 2
Sérialization
Autocloseable (Java 7)
Gestion de la concurrence :
Concurrence et Parallélisme
Threads
Synchronize
Wait et Notify
ReentrantLock
Future et ExecutorService
Actors avec Akka