Examen log121 Flashcards

1
Q

Patron Composite

A

Permet la représentation d’une structure arborescente d’objets afin de traiter les objets individuellement et ou uniformément. En autres ajouter ou modifier des objets sans affecter la nature de l’arbre.
Ex : utilisé pour l’organisation de fichiers (dossier = composite, fichier = leaf).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Patron composite pros and cons

A

Pros :
- Réduit la complexité de la structure des objets.
- Création d’une hiérarchie d’objets sans avoir à individualiser les méthodes.
- Rajouter des types d’objets sans modifier le reste de l’arbre.

Cons :
- La structure de l’arbre peut devenir complexe.
- Traitement des objets peut être plus lent (doit passer dans les plusieurs niveaux).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Patron médiateur

A

Permet de faciliter les interactions entre différents objets en utilisant un objet intermédiaire qui coordonne les échanges. Généralement utilisé lorsque l’application est complexe.
Ex : utiliser pour la gestion d’interactions des objets d’un site web en ligne (objet = clients, produits, commandes, fournisseurs).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Patron médiateur pros and cons

A

Pros :
- Réduit le couplage (si un objet est modifié, les objets l’utilisant n’ont pas besoin de l’être aussi) entre les différents objets de l’application.
- Améliore les performances de l’application

Cons :
- Peut ajouter de la complexité au code de l’application.
- Les objets perdent la référence aux autres objets de l’application de base.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Patron adaptateur

A

Permet de connecter des objets n’ayant pas des interfaces compatibles.
Ex : connecter une application Java à une base de données. Cible = interface entre base de données et application.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Patron adaptateur pros and cons

A

Pros :
- Permet la connexion d’objets sans modifier la nature de ceux-ci.
- Fait fonctionner des applications ayant des technologies ou des versions différentes.

Cons :
- Complexifie le code rendant le débogage plus difficile.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Patron décorateur

A

Permet d’ajouter des fonctionnalités à un objet existant de manière dynamique.
Ex : peut être utilisé dans une application de traitement d’image pour ajouter des filtres à une image. Le component serait l’image, le concretecomponent serait l’image1, le decorator serait l’image filtrée et le concretedecoratorA et B seraient filtre1 et 2.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Patron décorateur pros and cons

A

Pros :
- Ajouter des fonctionnalités aux objets sans modifier leur nature et sans créer de nouvelles classes pour chaque combinaison possible.
- Réduire duplication de code.

Cons :
- Complexifie le code rendant le débogage plus difficile.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Patron memento

A

Permet de sauvegarder l’état d’un objet et de le restaurer ultérieurement.
Ex : application de traitement de texte pour sauvegarder l’état du doc à un moment donné. L’originator est la commande sauvegardée, le memento est le document memento et le caretaker est la pile de document memento.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Patron memento pros and cons

A

Pros :
- Fonctionnement sans perturbation de l’objet
- Encapsulation de la logique de sauvegarde et de restauration de l’état de l’objet.

Cons :
- Complexifie le code rendant le débogage plus difficile.
- Nécessite des ressources supplémentaires.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Patron façade

A

Permet de donner une interface simplifiée pour un système complexe.
Ex : application de banque en ligne pour les utilisateurs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Patron façade pros and cons

A

Pros :
- Améliorer la sécurité de l’adaptation en limitant l’accès direct aux objets

Cons :
- Complexité du code rendant les débogages difficiles.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Patron de chaine de responsabilité

A

Permet de traiter une requête de manière dynamique et flexible.
Ex : traitement de demandes de remboursement. Handler = handlerRemboursement. concretehandler1 = vérificationMontantArembourser. concretehandler2 = petitMontant. concretehandler3 = grandMontant.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Patron de chaine de responsabilité pros and cons

A

Pros :
- Structurer et donner des rôles à chaque concreteHandler.
- Modifier dynamiquement la chaine.

Cons :
- Complexifie le code rendant le débogage difficile.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Patron prototype

A

Permet de créer de nouveaux objets à partir d’un modèle existant (clonage).
Ex : création de graphes. prototype = graphique

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Patron prototype pros and cons

A

Pros :
- Réduction du temps de création d’objet
- Flexibilité (créer des objets spécifiques malgré le clonage)

Cons :
- Si application complexe alors implémentation du patron peut le devenir.
- Nécessite plus de temps et de ressources.
- Faire attention à ne pas modifier l’objet de référence si modification de l’objet cloné.

17
Q

Patron proxy

A

Permet de contrôler l’accès à un objet en créant un objet de substitution qui agit comme l’objet réel.
Ex : téléchargement de fichiers avec des images lourdes. Subject = interface graphique
Proxy = image proxy
Real subject = image

18
Q

Patron proxy pros and cons

A

Pros :
- Permet de télécharger les contenus volumineux en ressources et temps seulement lorsque nécessaire
- Permet de garantir la sécurité et l’accessibilité de certaines classes.

Cons :
- Complexité du patron peut augmenter la complexité du code

19
Q

Patron visiteur

A

Permet de séparer l’algorithme de traitement des données de la structure de données.
Ex : l’analyse de fichiers de configuration.
élément = element
concreteelementA = fichier
concreteelementB = folder
visitor = visitor
concretevisitor1 = visiteurfichier
concretevisitor2 = visiteurfolder

20
Q

Patron visiteur pros and cons

A

Pros :
- Permet d’ajouter des méthodes et des opérations sans modifier les cases des objets sur lesquels elles agissent.
- Réutilisation du code

Cons :
- Complexitié
- Peut surcharger d’objets visiteurs donc diminuer les performances.