Logo de la rubrique JAVA

JAVA

Java est depuis très longtemps l’un des langages de programmation les plus répandus et les plus efficaces. La raison en est qu’il présente de nombreux avantages qui aident les programmeurs à résoudre facilement des problèmes complexes du monde réel : syntaxe simplifiée et lecture facile, facilité d’apprentissage, bibliothèques très complètes. Java supprime toutes les fonctionnalités complexes de C et C++ comme les pointeurs, les structures, les unions et facilite l’implémentation des codes. L’un des principaux avantages de Java est qu’il s’agit aussi d’un langage de programmation orienté objet plus rapide que Python et R..

OBJECTIFS

Assimiler les concepts de base de Java
Mettre en oeuvre le Java dans les projets
Acquérir une vraie autonomie dans ce langage

PUBLIC VISE

Développeur d’application objet, architecte logiciel.

PREREQUIS

Connaissance d’un langage comme C ou C++ - Notions de langage objet nécessaires

INTERVENANT

Ingénieur de Recherche au CNRS - 30 ans d’expérience en développement logiciel et modélisation. Enseignant le numérique dans plusieurs écoles.

DUREE

3 jours soit 21h

PRIX

Consulter Sébastien SALAS, salas@captronic.fr - 06 87 83 32 32

LIEU

Formation présentielle ou distancielle
A distance, les accès à un outil informatique en ligne adapté seront fournis au stagiaire avant le démarrage de la formation.
En présentiel, surface de salle permettant de respecter les mesures sanitaires de distanciation sociale, salle équipée d’un outil de projection et connexion à Internet.

PROGRAMME

Tour de table

Présentation générale
Pourquoi utiliser Java ?
Principes fondateurs de l’Objet
Présentation générale : le langage, les outils, la bibliothèque.
Les distributions de Java.
Le compilateur Java
La machine virtuelle Java

Bases du langage
Premier exemple de programme en Java
Conventions d’écriture.
Commentaires et mise en forme
Types primitifs de Java
Initialisation et constantes
Structure de contrôle
Opérateurs sur les types primitifs
Affectation, recopie et comparaison
Les tableaux en Java.

Classes et objets
Classe et définition
Classe et notation UML
Classe et visibilité des attributs
Distinction entre attributs et variables
Objet et définition
États des objets
Affectation et comparaison
Structure des objets
Cycle de vie d’un objet
Création d’objets : déroulement
Création d’objets : réalisation
Constructeur sans arguments
Constructeurs multiples
Accès aux attributs
Envoi de messages : appel de méthodes
Envoi de messages : passage de paramètres
L’objet « courant » This
L’objet « courant » : attributs et méthodes
UML et codage d’une classe : composition, agrégation
Destruction et ramasse-miettes
Gestion des objets
Surcharge
Encapsulation : visibilité des membres d’une classe

Les chaînes de caractères « String »
Les Chaînes modifiables « StringBuffer »
Les chaînes décomposables « StringTokenizer »
Variables de classe
Constantes de classe
Variables et Constantes de classe
Méthodes de classe
Les tableaux en Java : application Objets
Varargs : passage de paramètres en nombre indéfini

Héritage
Définition et intérêts
Classes et sous-classes
Classes et sous-classes : terminologie
Généralisation et Spécialisation
Héritage et Java
Héritage à plusieurs niveaux
Surcharge et redéfinition
Redéfinition avec réutilisation
Usage des constructeurs : suite
La classe Object
Droits d’accès aux attributs et méthodes
Méthodes et classes finales

Héritage et Polymorphisme
Définition du polymorphisme
Polymorphisme : pourquoi faire ?
Polymorphisme et Java : surclassement
lien dynamique
bilan
downcasting
La méthode « equals() »
Classes abstraites : intérêts
Notion d’interface
Syntaxe associée aux interfaces
Implémentation et extensions multiples d’interfaces.
Classes abstraites versus interfaces
L’interface « Cloneable »
Les classes internes « Inner Classes »

Les exceptions
Définition
Mécanisme
Les exceptions courantes
Lancer et capturer une exception
Modélisation
Transmission d’information
Exception : finally
Exception : pour ou contre

Les indispensables en Java

Les packages
Javadoc et les commentaires
Construction d’une archive avec Jar

Les flux
Définition des flux de données
Hiérarchies de classes pour gérer les flux
Les flux de caractères
Les flux binaires
La classe File
Les collections
Les collections : les génériques Java
Les collections : Iterator
LinkedList
ArrayList
HashSet

TP1 : Installation des outils de développement et de débogage

TP2 : Développement d’une première application de base et découverte de la syntaxe du langage

TP3 : Développement d’une première application avec des classes et des objets

TP4 : Développement d’une première application avec la notion d’héritage

TP5 : Mise en oeuvre des exceptions

TP6 : Exercice sur les package, la documentation, les archives de déploiement

TP7 : Gestion des flux
Mini projet : Développement d’une application en autonomie

Tour de table

ORGANISATION

Moyens pédagogiques : Outil de visioconférence si formation à distance - Support de cours – travaux pratiques. Une assistance pédagogique sur le cours sera assurée par le formateur pendant 1 mois à l’issue de la formation.
Moyens permettant d’apprécier les résultats de l’action : Evaluation de l’action de formation par l’envoi d’un questionnaire de satisfaction à chaud à l’issue de la formation, puis d’un questionnaire à froid quelques semaines après la formation.
Moyen permettant de suivre l’exécution de l’action : Evaluation des connaissances via un questionnaire avant et après la formation. En présentiel, feuilles de présence signées par chaque stagiaire et le formateur par demi-journée de formation.
Sanction de la formation : Attestation de présence ou d’assiduité

RENSEIGNEMENTS ET INSCRIPTION

Sébastien SALAS, salas@captronic.fr - 06 87 83 32 32
Pour toute question y compris les conditions d’accès pour les publics en situation de handicap.


Informations mises à jour le 07/06/2023