Ingénieurs 4ème année (I4)
Design patterns en Java (IN413)
| Merci de signaler à D.Bureau tout lien défectueux. |
Attention !
Pour consulter les pages de cette unité, il est conseillé d'utiliser
MS Internet Explorer (version 6 minimum).
|
- 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 :
- Denis BUREAU (5356) ou Pierre LEFEBVRE (5306) pour le groupe 1,
- Jean-Michel DOUIN ou Patrice LIGNELET pour le groupe 2,
Pour des questions sur le cours, vous pouvez vous adresser à
Jean-Michel DOUIN
et pour des problèmes relatifs à l'unité IN413 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 à Jnews sont dans
l'agenda.
- Cours 0 (07/09/09)
: Introduction aux patterns, à l'unité, et aux rendus de tp.
Rappels sur la POO, sur Java, et sur BlueJ.
(diapos 1 à 44 du Cours_0)
-
+ TP 0 (non planifié, juste pour s'habituer aux outils avant le 10/09/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 (10/09/09)
: Classification des patterns (GoF), mode d'emploi, exemples.
Le pattern Délégation.
(diapos du Cours_1)
Vous pouvez aussi lire
cette présentation des patterns.
- + TP 1 (à rendre avant le 17/09/09)
: PileI
(tp1.jar
sujet en pdf)
Plusieurs implémentations pour un même comportement,
java.lang.Object, pattern délégation
- Cours 2 (14/09/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
), du modèle MVC,
et du modèle
événementiel.
- + TP 2 (à rendre avant le 20/09/09)
: Boutons, souris, calculatrice
(tp2.jar
sujet en pdf)
Pattern Observateur, évènements AWT,
Modèle-Vue-Contrôleur
- Cours 3 (21/09/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,
Fabrique, et
Singleton.
- + TP 3 (à rendre avant le 27/09/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 (28/09/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,
Interpréteur,
Visiteur, et
Décorateur.
- + TP 4 (à rendre avant le 04/10/09)
: Les flux et les expressions
(tp4.jar
sujet en pdf)
Patterns Décorateur, Composite, Interpréteur, Visiteur. Entrées/sorties java
- Cours 5 (05/10/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
et Singleton,
et la présentation des
threads en java,
- + TP 5 (à rendre avant le 11/10/09)
: Lecture cyclique d'un capteur
(tp5.jar
sujet en pdf)
Threads, patterns Chaîne de responsabilités et Singleton
- Cours 6 (12/10/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 et
Dynamic Proxy.
- + TP 6 (à rendre avant le 18/10/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 (19/10/09)
: Une application vue comme un assemblage de patterns.
Les transactions.
(diapos du Cours_7)
- + TP 7 (à rendre avant le 28/10/09)
: Transactions bancaires.
(tp7.jar
sujet en pdf)
Mémento, Commande, Template method, Composite, Itérateur, Visiteur
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 Channel
which.exe
Dernière mise à jour le
par DB