« Patrons de conception/Monteur » : différence entre les versions
Contenu supprimé Contenu ajouté
m + Voir aussi |
imported>Spyke Aucun résumé des modifications |
||
Ligne 3 :
Un exemple d'objet source est une liste de caractères ou d'images dans un message devant être encodé. Un objet directeur est nécessaire pour fournir les informations à propos de l'objet source vers la classe ''Monteur''. La classe ''Monteur'' abstraite pourrait être une liste d'appel de l'interface que la classe directeur utilise comme par exemple ''handleCharacter()'' ou ''handleImage()''. Chaque version concrète de la classe ''Monteur'' pourrait implémenter une méthode pour ces appels ou bien simplement ignorer l'information si appelée. Un exemple de monteur concret serait ''enigmaBuilder'' qui crypterait le texte, mais ignorerait les images.
Dans l'exemple précédent, le logiciel va créer une classe ''Monteur'' spécifique, ''enigmaBuilder''. Cet objet est passé à un objet directeur simple qui effectue une itération à travers chaque donnée du message principal de l'objet source. La classe monteur
Finalement, le code principal va demander l'objet final depuis le ''Monteur'' et ensuite détruire celui-ci et l'objet directeur. Par la suite, si jamais un remplacement de la technique de cryptage de ''enigmaBuilder'' par une autre se faisait sentir, une nouvelle classe Monteur pourrait être substituée avec peu de changements pour la classe directeur et le code principal. En effet, le seul changement serait la classe ''Monteur'' actuelle passée en paramètre au directeur.
|