Vous êtes sur la page 1sur 5

INFO404 F Deuxième session

Programmation Avancée Novembre – 2022


D. May DEHAYNI Durée : 1 hr 30 mins
Université Libanaise D. Samar TAWBI
Faculté des Sciences I

P.S. : Assurer vous qu’il y a 5 pages. Les documents sont permis en examen.
Question I [pts]:
Répondre aux questions suivantes et donner une justification brève.
1. Est-ce que l’implémentation des ‘design patterns’ doit être orientée objet dans le sens où on doit
utiliser l’héritage et le polymorphisme?
_____________________________________________________________________________________________________

_____________________________________________________________________________________________________

_____________________________________________________________________________________________________

_____________________________________________________________________________________________________

______________________________________________

2. Quels sont les objectifs du patron décorateur ? (choisir la ou les bonnes réponses)
a. Permettre l’addition dynamique de fonctionnalités à un objet.
b. Fournir une interface uniforme à un ensemble d’interfaces de plus haut niveau dans le système.
c. Permettre de transférer la responsabilité de création d’objets aux sous-classes.
d. Cacher la complexité des sous-systèmes au client.
e. Fournir un remplaçant de l’objet pour son contrôle et sa sécurité.
f. S’assurer que la classe a une seule instance dans toute l’application.
g. Définir une interface pour la création d’objets.
h. Proposer une alternative flexible à l’héritage.
_____________________________________________________________________________________________________

_____________________________________________________________________________________________________

_____________________________________________________________________________________________________

_____________________________________________________________________________________________________

______________________________________________

3. Indiquer pour chaque cas quel ‘design pattern’ vous proposez d’utiliser:
a. Rassembler les informations sur un objet avant de demander sa construction.
b. Reporter pour plus tard la décision sur quelle classe instancier.
c. Construire une famille d’objets qui partagent certaines caractéristiques.
d. Spécifier un objet à créer en donnant l’exemple d’une copie d’un objet existant.

Page 1/5
________________________________________________________________________________________________________

________________________________________________________________________________________________________

________________________________________________________________________________________________________

________________________________________________________________________________________________________

______________________________________________________

4. Le code suivant est l’implémentation de quel ‘design pattern’?


Interface Transporter {
void visit();
}
class Taxi implements Transporter {
public void visit() {System.out.println(“Traveling with taxi”);}
}
class Bus implements Transporter {
public void visit() {System.out.println(“Traveling with bus”);}
}
class Train implements Transporter {
public void visit() {System.out.println(“Traveling with train”);}
}
class Transportation {
Transporter tporter;
public Transportation(Transporter t) {
Answer: A True. Java doe not allow multiple
inheritance therefore adapter will always result in an object adapter
instead of a class adapter.
tporter = t;
}
public void accept_visitor() {
tporter.visit();
}
}
class Example {
public static void main(String[] args) {
Transportation context = new Transportation(new Taxi());
context.accept_visitor();
context = new Transportation(new Bus());
context.accept_visitor ();
}
}
a. Decorator
b. Visitor
c. Flyweight
d. Composite
e. Strategy

________________________________________________________________________________________________________

________________________________________________________________________________________________________

________________________________________________________________________________________________________

________________________________________________________________

5. Ecrire le patron ‘Adapter’ en Java va toujours donner un adaptateur objet et jamais classe.
Page 2/5
a. Vrai
b. Faux
________________________________________________________________________________________________________

________________________________________________________________________________________________________

__________________________________________________________________________

Question II [pts]:

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

Page 3/5
_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

Page 4/5
_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

_______________________________________________________________________________________

"La patience est amère mais son fruit est sucré." J


Aristote, scientifique et philosophe grecque 384 BC – 322 BC
 Bonne Chance

Page 5/5

Vous aimerez peut-être aussi