Internet Applications - Technologies JAVA & XML
Les fondamentaux de la programmation Java
Reference : JAV0


Prochaines sessions
- Le 01/02/2021
- Le 19/04/2021
- Le 21/06/2021

Objectifs
- Maîtriser la syntaxe et les principales APIs du langage Java
- Savoir programmer en Java en toute autonomie
- Pouvoir manipuler les Frameworks les plus utilisés du langage tels que JUnit, log4J ou i18n
- Être en mesure de manipuler des données à l’aide de JDBC
- Savoir appliquer le paradigme de la programmation fonctionnelle
- Découvrir les nouveautés de Java 9
Pré requis
- Disposer d’une expérience d’un langage de programmation (C, C++, VB…)
- Connaître les principes de la programmation orientée objet
- Connaissance des concepts de bases de données relationnelles et du langage SQL
- Avoir déjà développé et livré une application
Modalités pédagogiques
Cours dispensé en mode présentiel avec une alternance d’apports théoriques et méthodologiques, et de mises en situations pratiques
Certification
non
Public visé
Inscription
Programmes de Les fondamentaux de la programmation Java
Présentation de l’écosystème Java
- Introduction à Java et à ses tiers techniques J2SE/J2E/J2ME et la JVM
- Présentation des composants techniques de Java (JDK) ainsi que des principales APIs
- Les outils Java : JavaDoc, Jar et co
- Panorama des principaux IDE : Eclipse, NetBeans et IntelliJ
L’IDE Eclipse
- Notions de workspace, vues et perspectives
- Présentation des différents wizard
- Extensions avec Eclipse Marketplace
- Les accès aux bases de données et outils serveurs dans Eclipse
Les bases du langage : la syntaxe
- Déclaration de variables
- Les opérateurs
- Initialisation
- Instructions de contrôle
- Boucles et itérations
- Notions de visibilité et de variable de classe Vs. variable d’instance
Les concepts orientés Objet en Java
- La classe et ses attributs / méthodes (nombre d’arguments fixe et variable)
- Les constructeurs
- Les références
- L’encapsulation, les imports et packages
- Les interfaces
- Les classes abstraites
- L’héritage
- Unboxing et l’autoboxing
Gestion des erreurs avec les exceptions
- Qu’est-ce que qu’une exception ?
- Les différentes exceptions en Java
- Les blocs try/catch/finally
- Gestion locale ou centralisée
- Créer ses propres exceptions métier
Bibliothèques standards (collection, date, entrées/sorties)
- Gestion des tableaux et collections
- Les dates et calendriers
- Les entrées / sorties de fichiers
- La sérialisation
Accès aux SGBDR avec JDBC
- Présentation de la librairie JBDC
- Connexion à une base de données, exécution d’une requête et itération sur les résultats avec les interfaces Connection, Statement et ResultSet
- Requêtes paramétrées et requêtes stockées
Fichiers de propriétés et L’API d’internationalisation (i18n)
- Accès et manipulation des fichiers .properties
- Comment faire des applications en plusieurs langues
- Resource Bundle
API pour les fichiers de logs
- Générer des Logs avec Log4j
- Filtrer les Logs par niveau d’importance
- Configurer la / les destinations où sont générés les logs
Améliorer la qualité d’une application grâce aux tests unitaires
- Créer des tests unitaires avec JUnit
- Créer des suites de tests avec JUnit
- Générer des rapports
- Introduction à la notion de couverture de code et exemples de frameworks
- Options avancées de la perspective Debug
Programmation fonctionnelle et Lambda Expressions
- Introduction à la programmation fonctionnelle
- Exemples de Lambda Expressions
- Référentiels et méthodes
Introduction aux nouveautés Java 9
- La modularisation via le projet Jigsaw
- Fabriques pour les collections
- Améliorations de la classe Optional et de l’API Stream
- Un shell Java : REPL jShell