SlideShare une entreprise Scribd logo
Patron de conception
Chain of Responsibility
Amira Hakim
Dept de Mathématique & Informatique
Université de Souk-Ahras
1
UNIVERSITE MOHAMED CHERIF MESAADIA
SOUK-AHRAS
2
Motivation( Problématique )1/2
3
Considérons une fonction d'aide contextuelle pour une interface
graphique.
L'utilisateur peut obtenir des informations d'aide sur une partie de
l'interface en cliquant simplement dessus.
L'aide qui est fournie dépend de la partie de l'interface concernée et
aussi de son contexte.
Par ex , un bouton d’une boite de dialogue doit avoir des informations
d’aides différentes de celui d’un bouton de l’accueil de l’application.
Si aucune information d'aide existe pour cette partie de l'interface,
alors le système d'aide devrait afficher un message d'aide plus générale
sur le contexte immédiat(la boîte de dialogue dans son ensemble, par
ex).
Motivation( Problématique )2/2
4
Par conséquent, il vaut mieux organiser les information d'aide selon leur
généralité du plus spécifique au plus général.
Une demande d'aide est assurée par l'un des plusieurs objets d'interface
utilisateur ,dont chacun dépend du contexte et spécificité du help.
Le problème ici est que l'objet qui fournit finalement l'aide n’est pas
connu de façon explicite à l'objet (par exemple, le bouton) qui initie la
demande d'aide.
5
Click
6
De quoi a-t-on besoin?
7
Nous avons besoin d'un moyen de découpler le bouton qui déclenche la
demande d'aide des objets qui pourraient fournir des informations
d'aide.
Le patron Chain of Responsibility définit comment cela se passe.
intention
8
Eviter de coupler l’émetteur d’une requête avec son récepteur en
donnant une chance a plusieurs autres objets de gérer cette requête.
La chaine d’objets récepteurs passent la requête jusqu’a ce qu’un objet
gère cette dernière.
Utilité de chain of responsibility
9
Plus d’un objet peut traiter la requête ,mais celui qui vas vraiment gérer
cette requête n’est pas connu a l’avance.
Lorsqu’on veut attribuer la requête a un objet spécifique sans spécifier
le récepteur explicitement.
L’ensemble d’objets qui peuvent traiter la requête doit être spécifié
dynamiquement.
Description
10
Séparer l’émetteur et le récepteur en donnant a plusieurs objets (dans
un certain ordre) une chance a gérer la requête.
La requête est passée jusqu’a ce qu’un objet décide de la prendre en
charge(Handling the request ).
Le 1er objet de la chaine reçoit la requête soie:
il gère cette requête
il fait passer la requête a son successeur dans la chaine .
L’objet qui envoi la requête n’a aucune connaissance explicite de celui
qui va la traiter.
Structure
11
Structure d’un objet typique
Participants
12
Client: initialise une requête a un ConcreteHandler dans une chaine.
Handler: définit l’interface de traitement de requêtes. Il peut ainsi
implémenter des liens de ces successeurs.
ConcreteHandler: traite la requête dont il est responsable, ou passe la
requête a son successeur.
Conséquences
13
Avantages:
Découplement ou séparation de l’émetteur du récepteur.
Plus de flexibilité.
Les émetteurs ne sont pas obligés de savoir les handlers de leurs
requêtes.
Inconvénient:
le client ne peut pas explicitement préciser qui gère une demande.
Aucune garantie sur le traitement de la requête(demande tombe sur
fin de chaîne).
Patrons connexes
14
Le patron chaîne de responsabilité est souvent appliquée en
conjonction avec le patron composite.
D’où, le parent d'un composant peut agir comme son
successeur.
Fin
15
Merci Pour votre Attention!

Contenu connexe

Tendances

Architectures orientées services
Architectures orientées servicesArchitectures orientées services
Architectures orientées services
Donia Hammami
 
Fondamentaux d’une API REST
Fondamentaux d’une API RESTFondamentaux d’une API REST
Fondamentaux d’une API REST
Abdoulaye Dieng
 
Chp3 - Diagramme de Classes
Chp3 - Diagramme de ClassesChp3 - Diagramme de Classes
Chp3 - Diagramme de Classes
Lilia Sfaxi
 
Présentation SOA
Présentation SOAPrésentation SOA
Présentation SOA
Cynapsys It Hotspot
 
Chp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications MobilesChp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications Mobiles
Lilia Sfaxi
 
Chp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionChp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de Conception
Lilia Sfaxi
 
Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)
ENSET, Université Hassan II Casablanca
 
Android-Tp2: liste et adaptateurs
Android-Tp2: liste et adaptateursAndroid-Tp2: liste et adaptateurs
Android-Tp2: liste et adaptateurs
Lilia Sfaxi
 
Introduction aux systèmes répartis
Introduction aux systèmes répartisIntroduction aux systèmes répartis
Introduction aux systèmes répartis
Heithem Abbes
 
Chp3 - Les Services Web
Chp3 - Les Services WebChp3 - Les Services Web
Chp3 - Les Services Web
Lilia Sfaxi
 
Chp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOAChp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOA
Lilia Sfaxi
 
Marzouk architecture encouches-jee-mvc
Marzouk architecture encouches-jee-mvcMarzouk architecture encouches-jee-mvc
Marzouk architecture encouches-jee-mvc
abderrahim marzouk
 
Tp2 - WS avec JAXRS
Tp2 - WS avec JAXRSTp2 - WS avec JAXRS
Tp2 - WS avec JAXRS
Lilia Sfaxi
 
PFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignementPFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignement
Nassim Bahri
 
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka StreamsTraitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
ENSET, Université Hassan II Casablanca
 
556ef78d93c3b
556ef78d93c3b556ef78d93c3b
556ef78d93c3b
zineb taki
 
Presentation pfe
Presentation pfePresentation pfe
Presentation pfezinebcher
 
La spécification des besoins
La spécification des besoinsLa spécification des besoins
La spécification des besoinsIsmahen Traya
 
UML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriUML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouri
Mansouri Khalifa
 
Chp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées ServicesChp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées Services
Lilia Sfaxi
 

Tendances (20)

Architectures orientées services
Architectures orientées servicesArchitectures orientées services
Architectures orientées services
 
Fondamentaux d’une API REST
Fondamentaux d’une API RESTFondamentaux d’une API REST
Fondamentaux d’une API REST
 
Chp3 - Diagramme de Classes
Chp3 - Diagramme de ClassesChp3 - Diagramme de Classes
Chp3 - Diagramme de Classes
 
Présentation SOA
Présentation SOAPrésentation SOA
Présentation SOA
 
Chp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications MobilesChp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications Mobiles
 
Chp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionChp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de Conception
 
Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)
 
Android-Tp2: liste et adaptateurs
Android-Tp2: liste et adaptateursAndroid-Tp2: liste et adaptateurs
Android-Tp2: liste et adaptateurs
 
Introduction aux systèmes répartis
Introduction aux systèmes répartisIntroduction aux systèmes répartis
Introduction aux systèmes répartis
 
Chp3 - Les Services Web
Chp3 - Les Services WebChp3 - Les Services Web
Chp3 - Les Services Web
 
Chp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOAChp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOA
 
Marzouk architecture encouches-jee-mvc
Marzouk architecture encouches-jee-mvcMarzouk architecture encouches-jee-mvc
Marzouk architecture encouches-jee-mvc
 
Tp2 - WS avec JAXRS
Tp2 - WS avec JAXRSTp2 - WS avec JAXRS
Tp2 - WS avec JAXRS
 
PFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignementPFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignement
 
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka StreamsTraitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
 
556ef78d93c3b
556ef78d93c3b556ef78d93c3b
556ef78d93c3b
 
Presentation pfe
Presentation pfePresentation pfe
Presentation pfe
 
La spécification des besoins
La spécification des besoinsLa spécification des besoins
La spécification des besoins
 
UML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriUML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouri
 
Chp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées ServicesChp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées Services
 

En vedette

Présentation FIMEX - Journées Entrepreneuriat Jeunesse | SJC
Présentation FIMEX - Journées Entrepreneuriat Jeunesse | SJCPrésentation FIMEX - Journées Entrepreneuriat Jeunesse | SJC
Présentation FIMEX - Journées Entrepreneuriat Jeunesse | SJC
Synergie de la Jeunesse Camerounaise
 
Pw Point Boal2
Pw Point Boal2Pw Point Boal2
Pw Point Boal2UQAM
 
Assia Djebar
Assia DjebarAssia Djebar
Assia Djebar
Abdelkader Lemi
 
Premonition
PremonitionPremonition
Premonition
Lyes Sadoun
 
Comment un président peut sauver sa position
Comment un président peut sauver sa positionComment un président peut sauver sa position
Comment un président peut sauver sa position
turnaroundexec
 
Motion pour un libéralisme de progrès
Motion pour un libéralisme de progrèsMotion pour un libéralisme de progrès
Motion pour un libéralisme de progrès
Nicolas Debock
 
Pensées et pratiques féministes aujourd’hui
Pensées et pratiques féministes aujourd’huiPensées et pratiques féministes aujourd’hui
Pensées et pratiques féministes aujourd’hui
Cybersolidaires
 
En 2014, oser la gratitude !
En 2014, oser la gratitude !En 2014, oser la gratitude !
En 2014, oser la gratitude !
Marie Bo
 
Les trois temps de la conscience humaine et les trois voies de la souffrance
Les trois temps de la conscience humaine et les trois voies de la souffranceLes trois temps de la conscience humaine et les trois voies de la souffrance
Les trois temps de la conscience humaine et les trois voies de la souffranceGabriel Vergara
 
La obesidad
La obesidadLa obesidad
La obesidad
pashtiita
 
Les conditions de réussite d'une intervention sur la souffrance au travail
Les conditions de réussite d'une intervention sur la souffrance au travailLes conditions de réussite d'une intervention sur la souffrance au travail
Les conditions de réussite d'une intervention sur la souffrance au travailLACT
 
Souffrance psychique au travail mpgb 09 09 14
Souffrance psychique au travail mpgb 09 09 14Souffrance psychique au travail mpgb 09 09 14
Souffrance psychique au travail mpgb 09 09 14raymondteyrouz
 
Calendrier 2010 du mauvais patron
Calendrier 2010 du mauvais patronCalendrier 2010 du mauvais patron
Calendrier 2010 du mauvais patron
Erik Van Rompay
 
Chain of Responsability
Chain of ResponsabilityChain of Responsability
Chain of Responsability
Victor-Andrei Filimon
 
Comment agir après un choc traumatique
Comment agir après un choc traumatique Comment agir après un choc traumatique
Comment agir après un choc traumatique
LACT
 
Outils de la confiance en soi des professionnels
Outils de la confiance en soi des professionnelsOutils de la confiance en soi des professionnels
Outils de la confiance en soi des professionnels
HR SCOPE
 
Design patterns
Design patternsDesign patterns
Design patterns
Eric Toguem
 
Conférence Construire, développer et protéger son estime de soi, Gilles Payet...
Conférence Construire, développer et protéger son estime de soi, Gilles Payet...Conférence Construire, développer et protéger son estime de soi, Gilles Payet...
Conférence Construire, développer et protéger son estime de soi, Gilles Payet...
Transmission RH
 
Nine Pages You Should Optimize on Your Blog and How
Nine Pages You Should Optimize on Your Blog and HowNine Pages You Should Optimize on Your Blog and How
Nine Pages You Should Optimize on Your Blog and How
Leslie Samuel
 

En vedette (20)

Présentation FIMEX - Journées Entrepreneuriat Jeunesse | SJC
Présentation FIMEX - Journées Entrepreneuriat Jeunesse | SJCPrésentation FIMEX - Journées Entrepreneuriat Jeunesse | SJC
Présentation FIMEX - Journées Entrepreneuriat Jeunesse | SJC
 
Pw Point Boal2
Pw Point Boal2Pw Point Boal2
Pw Point Boal2
 
Assia Djebar
Assia DjebarAssia Djebar
Assia Djebar
 
Premonition
PremonitionPremonition
Premonition
 
Comment un président peut sauver sa position
Comment un président peut sauver sa positionComment un président peut sauver sa position
Comment un président peut sauver sa position
 
Motion pour un libéralisme de progrès
Motion pour un libéralisme de progrèsMotion pour un libéralisme de progrès
Motion pour un libéralisme de progrès
 
Pensées et pratiques féministes aujourd’hui
Pensées et pratiques féministes aujourd’huiPensées et pratiques féministes aujourd’hui
Pensées et pratiques féministes aujourd’hui
 
En 2014, oser la gratitude !
En 2014, oser la gratitude !En 2014, oser la gratitude !
En 2014, oser la gratitude !
 
Les trois temps de la conscience humaine et les trois voies de la souffrance
Les trois temps de la conscience humaine et les trois voies de la souffranceLes trois temps de la conscience humaine et les trois voies de la souffrance
Les trois temps de la conscience humaine et les trois voies de la souffrance
 
La obesidad
La obesidadLa obesidad
La obesidad
 
Les conditions de réussite d'une intervention sur la souffrance au travail
Les conditions de réussite d'une intervention sur la souffrance au travailLes conditions de réussite d'une intervention sur la souffrance au travail
Les conditions de réussite d'une intervention sur la souffrance au travail
 
Souffrance psychique au travail mpgb 09 09 14
Souffrance psychique au travail mpgb 09 09 14Souffrance psychique au travail mpgb 09 09 14
Souffrance psychique au travail mpgb 09 09 14
 
Chapitre 2concpt de soi
Chapitre 2concpt de soiChapitre 2concpt de soi
Chapitre 2concpt de soi
 
Calendrier 2010 du mauvais patron
Calendrier 2010 du mauvais patronCalendrier 2010 du mauvais patron
Calendrier 2010 du mauvais patron
 
Chain of Responsability
Chain of ResponsabilityChain of Responsability
Chain of Responsability
 
Comment agir après un choc traumatique
Comment agir après un choc traumatique Comment agir après un choc traumatique
Comment agir après un choc traumatique
 
Outils de la confiance en soi des professionnels
Outils de la confiance en soi des professionnelsOutils de la confiance en soi des professionnels
Outils de la confiance en soi des professionnels
 
Design patterns
Design patternsDesign patterns
Design patterns
 
Conférence Construire, développer et protéger son estime de soi, Gilles Payet...
Conférence Construire, développer et protéger son estime de soi, Gilles Payet...Conférence Construire, développer et protéger son estime de soi, Gilles Payet...
Conférence Construire, développer et protéger son estime de soi, Gilles Payet...
 
Nine Pages You Should Optimize on Your Blog and How
Nine Pages You Should Optimize on Your Blog and HowNine Pages You Should Optimize on Your Blog and How
Nine Pages You Should Optimize on Your Blog and How
 

Patron de conception Chain of Responsibility

  • 1. Patron de conception Chain of Responsibility Amira Hakim Dept de Mathématique & Informatique Université de Souk-Ahras 1 UNIVERSITE MOHAMED CHERIF MESAADIA SOUK-AHRAS
  • 2. 2
  • 3. Motivation( Problématique )1/2 3 Considérons une fonction d'aide contextuelle pour une interface graphique. L'utilisateur peut obtenir des informations d'aide sur une partie de l'interface en cliquant simplement dessus. L'aide qui est fournie dépend de la partie de l'interface concernée et aussi de son contexte. Par ex , un bouton d’une boite de dialogue doit avoir des informations d’aides différentes de celui d’un bouton de l’accueil de l’application. Si aucune information d'aide existe pour cette partie de l'interface, alors le système d'aide devrait afficher un message d'aide plus générale sur le contexte immédiat(la boîte de dialogue dans son ensemble, par ex).
  • 4. Motivation( Problématique )2/2 4 Par conséquent, il vaut mieux organiser les information d'aide selon leur généralité du plus spécifique au plus général. Une demande d'aide est assurée par l'un des plusieurs objets d'interface utilisateur ,dont chacun dépend du contexte et spécificité du help. Le problème ici est que l'objet qui fournit finalement l'aide n’est pas connu de façon explicite à l'objet (par exemple, le bouton) qui initie la demande d'aide.
  • 6. 6
  • 7. De quoi a-t-on besoin? 7 Nous avons besoin d'un moyen de découpler le bouton qui déclenche la demande d'aide des objets qui pourraient fournir des informations d'aide. Le patron Chain of Responsibility définit comment cela se passe.
  • 8. intention 8 Eviter de coupler l’émetteur d’une requête avec son récepteur en donnant une chance a plusieurs autres objets de gérer cette requête. La chaine d’objets récepteurs passent la requête jusqu’a ce qu’un objet gère cette dernière.
  • 9. Utilité de chain of responsibility 9 Plus d’un objet peut traiter la requête ,mais celui qui vas vraiment gérer cette requête n’est pas connu a l’avance. Lorsqu’on veut attribuer la requête a un objet spécifique sans spécifier le récepteur explicitement. L’ensemble d’objets qui peuvent traiter la requête doit être spécifié dynamiquement.
  • 10. Description 10 Séparer l’émetteur et le récepteur en donnant a plusieurs objets (dans un certain ordre) une chance a gérer la requête. La requête est passée jusqu’a ce qu’un objet décide de la prendre en charge(Handling the request ). Le 1er objet de la chaine reçoit la requête soie: il gère cette requête il fait passer la requête a son successeur dans la chaine . L’objet qui envoi la requête n’a aucune connaissance explicite de celui qui va la traiter.
  • 12. Participants 12 Client: initialise une requête a un ConcreteHandler dans une chaine. Handler: définit l’interface de traitement de requêtes. Il peut ainsi implémenter des liens de ces successeurs. ConcreteHandler: traite la requête dont il est responsable, ou passe la requête a son successeur.
  • 13. Conséquences 13 Avantages: Découplement ou séparation de l’émetteur du récepteur. Plus de flexibilité. Les émetteurs ne sont pas obligés de savoir les handlers de leurs requêtes. Inconvénient: le client ne peut pas explicitement préciser qui gère une demande. Aucune garantie sur le traitement de la requête(demande tombe sur fin de chaîne).
  • 14. Patrons connexes 14 Le patron chaîne de responsabilité est souvent appliquée en conjonction avec le patron composite. D’où, le parent d'un composant peut agir comme son successeur.