Filière Réseau : 4ème année (I4FR)
Design patterns en Java (IN4R21)
Merci de signaler à D.Bureau tout lien défectueux. |
- Savoir programmer en Java est un pré-requis pour cette unité.
2 cours Java en français peuvent aider ceux qui ont des difficultés :
J-M.Doudoux et
Touraïvane
-
Outils utilisés :
Java SE 6.0
et ses
nouvelles possibilités
(voir aussi les
changements majeurs
disponibles depuis la version 1.5.0)
-
Avec l'environnement de développement
BlueJ
-
Le résumé
des 23 patterns "historiques" dans les 3 catégories
Behavioral, Creational,
et Structural.
-
Les présentations des patterns de
R.
Whitney et James W.Cooper
sont également des sources d'informations très utiles.
-
Si vous avez besoin d'aide sur Java ou pour un TP, vous pouvez joindre
les enseignants par mail :
- Jean-Michel DOUIN ou Denis BUREAU (5356).
Pour des questions sur le cours, vous pouvez vous adresser à
Jean-Michel DOUIN
et pour des problèmes relatifs à l'unité IN4R21 en
général, vous pouvez vous adresser à
Denis BUREAU.
Procédure pour rendre les TP
(les photos d'écrans n'ont pas encore été mises à jour)
Les dates limites de soumission de chaque question à Jnews sont dans
l'agenda.
- Cours 0 (05/01/09)
: Introduction aux patterns, à l'unité, et aux rendus de tp.
Rappels sur la POO, sur Java, et sur BlueJ.
(diapos 1 à 40 du Cours_0_1)
-
+ TP 0 (non planifié, juste pour s'habituer aux outils avant le 14/01/09)
: Fahrenheit/Celcius
(tp0.jar
sujet en pdf)
BlueJ, tests unitaires, variables et méthodes de classe,
filtrage et capture des exceptions, applettes
- Cours 1 (12/01/09)
: Classification des patterns (GoF), mode d'emploi, exemples.
Le pattern Délégation.
(diapos 38 à 83 du Cours_0_1)
Vous pouvez aussi lire
cette présentation des patterns.
- + TP 1 (à rendre avant le 18/01/09)
: PileI
(tp1.jar
sujet en pdf)
Plusieurs implémentations pour un même comportement,
java.lang.Object, pattern délégation
- Cours 2 (19/01/09)
: Le pattern MVC.
Applettes et évènements awt.
(diapos du Cours_2
)
Vous pouvez aussi lire
la présentation du pattern Observateur (
note 10
et ce chapitre
ou bis
), du modèle MVC
(bis),
et du modèle
événementiel.
- + TP 2 (à rendre avant le 26/01/09)
: Boutons, souris, calculatrice
(tp2.jar
sujet en pdf)
Pattern Observateur, évènements AWT,
Modèle-Vue-Contrôleur
- Cours 3 (27/01/09)
: Les structures de données en COO, les collections en Java, et la généricité.
Les patterns Template Method, Itérateur, Fabrique, et Singleton.
(diapos du Cours_3)
Vous pouvez aussi lire
la présentation des patterns
Itérateur
(bis),
Fabrique
(bis), et
Singleton
(bis).
- + TP 3 (à rendre avant le 02/02/09)
: Ensembles, listes, dictionnaires, et fabriques
(tp3.jar
sujet en pdf)
Classe et méthode abstraites, classe anonyme, java.util.Collection,
généricité, pattern Itérateur,
pattern Fabrique, table de "hachage"
- Cours 4 (02/02/09)
: Les structures de données récursives et les entrées/sorties.
Les patterns Composite, Interpréteur, Visiteur, et Décorateur.
(diapos du Cours_4)
Vous pouvez aussi lire
la présentation des patterns
Composite
(bis),
Interpréteur
(bis),
Visiteur
(bis), et
Décorateur
(bis).
- + TP 4 (à rendre avant le 08/02/09)
: Expressions arithmétiques et booléennes, flux d'entrées/sorties.
(tp4.jar
sujet en pdf)
Patterns Composite, Interpréteur, Visiteur, Décorateur. Entrées/sorties java
- Cours 5 (09/02/09)
: La programmation concurrente et les clients du protocole tcp/http.
Les patterns Chaîne de responsabilités et Singleton (revisité).
(diapos du Cours_5)
Vous pouvez aussi lire
la présentation des patterns
Chaîne de responsabilités
(bis) et
Singleton
(bis),
et la présentation des
threads en java,
- + TP 5 (à rendre avant le 16/02/09)
: Lecture cyclique d'un capteur
(tp5.jar
sujet en pdf)
Threads, patterns Chaîne de responsabilités et Singleton
- Cours 6 (02/03/09)
: Les patterns Proxy (ou Procuration ou Mandataire) et Dynamic Proxy.
(diapos du Cours_6)
Vous pouvez aussi lire
la présentation des patterns
Proxy/Procuration/Mandataire
(bis) et
Dynamic Proxy.
- + TP 6 (à rendre avant le 08/03/09)
: Liste sauvegardée sur un serveur distant
(tp6.jar
sujet en pdf)
Gestion de liste persistante, Http, Reflection, patterns Proxy et Dynamic Proxy
- Cours 7 (09/03/09)
: Une application vue comme un assemblage de patterns.
Les transactions.
(diapos du Cours_7)
Vous pouvez aussi lire
la présentation des patterns
Memento
(bis),
Command
(bis), et
Template Method
(bis).
- + TP 7 (à rendre avant le 15/03/09)
: Transactions bancaires.
(tp7.jar
sujet en pdf)
Mémento, Commande, Template method, Composite, Itérateur, Visiteur
- Examen écrit (16/03/09) :
un seul document autorisé
Documentations officielles
du langage Java (
API 6.0)
Spécification
(grammaire) du langage Java.
Documentation officielle de JavaDoc
Official tutorials
for Java (in english)
Les Patterns hors de l'informatique (in english)
Patterns
Course on Patterns and
Advanced Object-Oriented Design & Programming.
The
Design Patterns Java Companion
Java
Design Patterns at a glance
Java Channel
which.exe
Dernière mise à jour par DB le