Programmation orientée objet avancée s3
Enseignant:
Email:
Durée totale du cours: 45 H
Semestre : 3
Nombre de crédits : 3
| Modules
spécialisés |
Modules de
base |
Sciences et techniques de
l’ingénierie |
Préparation à la carrière professionnelle |
| |
|
X |
|
| Nombre d’heures |
Activités hors classe |
|
| 22.5 |
18 |
|
| cours |
TD |
TP |
| 22.5 |
13.5 |
9 |
|
|
|
|
|
| Code |
:GT3305 |
Programmation orientée objet avancée
|
Objectifs d’apprentissage et compétences visées
L’étudiant sera capable de développer des applications par une approche objet. Plus précisément, se familiariser avec les concepts de la technologie objet. L’étudiant devra être capable de réaliser des applications informatiques basées sur le paradigme de la programmation orientée objet. D’autre part l’accent sera mis sur les notions avancées du langage de programmation JAVA.
L’objectif est de présenter un panorama synthétique des principales librairies concernant la programmation des entrées/sorties (fichiers texte, fichiers binaires, fichiers d’objets), la programmation évènementielle (Interfaces graphiques), la programmation concurrente (threads).
Contenu du cours
- Chapitre 1 : Introduction
- AWT/SWING
- Composants lourds & légers
- Chapitre 2 : Les composants SWING
- Chapitre 3 : Gestionnaire de disposition
- FlowLayout, BorderLayout, GridLayout, BoxLayout et GridBagLayout
- Sans gestionnaire de mise en flot
- Chapitre 4 : Gestion des événements
- Les « Listener »
- Les « Adapter »
- Les classes anonymes
- Exemples
- Chapitre 5 : Accès à la base de données
- JDBC API
- Chargement de drivers/Connexion à la base de données
- Statement, PreparedStatement
- Manipulation et exécution de requête de sélection/mise à jours
- Création d’un modèle d’un JTable (DefaultTableModel)
- Exemples
- Chapitre 6 : Le graphisme en java
- Class Graphics
- Java 2D
- Exemples (Paint)
- Chapitre 7 : Thread
- Création d’un thread et Cycle de vie d’un thread
- Les processus
- Synchronisation
- Exemples
- Thread & swing
- Chapitre 8 : Les collections et type générique
- Set, List, Map et Class Collections
- Les types génériques : exemple
Contenu (TP)
- TP 01 : Interfaces graphiques – manipulations des composants
- TP 02 : Interfaces graphiques – manipulations des Layout
- TP 03 : Interfaces graphiques – manipulations des événements
- TP 04 : Interfaces graphiques – une synthèse
- TP 05 : Accès à la base de données
- TP 06 : Utilisation du JTable avec une base de données
- TP 07 : Dessiner avec Java
- TP 08 : Thread : création, synchronisation
- TP 09 : Les collections et types générique
Méthodes d’enseignement et d’apprentissage
- Enseignement frontal (magistral) avec des exemples à résoudre en
- Exercices théoriques et études de cas (présentation et discussion).
- Travaux pratiques (laboratoire)
- Travaux à faire à domicile (mini-projet)
Connaissances et compétences pré-requises
- Paradigmes de programmation (des notions du concept objet).
Références bibliographiques
- Un polycopié (Notes du cours) de l’enseignant sera
- Autres références sous forme de tutoriaux, manuels ou documents à télécharger
- Les recommandations bibliographiques suivantes doivent être considérées :
- Thierry GROUSSARD, JAVA 8. – Les fondamentaux du langage, ENI, 501 pages, 2014, ISBN : 2746089769
- Claude DELANNOY, Programmer en Java – Java 5 à 7, Eyrolles – 868 pages, 8eédition, 27 septembre 2012, ISBN : 2212135661
- Claude DELANNOY, Couvre Java 5.0, Eyrolles – 313 pages, 2eédition, 1er août 2006, ISBN : 2212119895
Modalité d’évaluation
- 40% Contrôle continu (TP noté, Test, Assiduité, Devoir surveillé, travaux non présentiels, …)
- 60% Examen semestriel
- TP, Test, Assiduité, Travaux non présentiels, Mini-projets, … = 60% de Contrôle Continu
- Note de DS = 40% de Contrôle Continu
Résultats d’apprentissage :
Après avoir réussi ce cours, les étudiants seront capables de :
- Développer des programmes informatiques non triviaux en suivant des principes orientés objet reconnus.
- Evaluer de manière critique la pertinence d’un langage d’implémentation commercialement pertinent dans la solution de problèmes particuliers.
- Décrire les concepts utilisés en programmation et discuter de la programmation en utilisant le vocabulaire de l’informatique professionnelle.
- Choisir et utiliser des structures de données et des algorithmes appropriés dans la construction de programmes.
- Appliquer des techniques de conception fondées sur des principes dans la construction de logiciels.
- Choisir et utiliser des stratégies de test de logiciel appropriées.
- Réfléchir de manière critique à la fois au processus et aux résultats de la création de logiciels.
[lifterlms_course_continue_button]