qu'est-ce qu'un modèle de conception d'objet contextuel?
Réponses
Trop de publicités?Un Contexte est un ensemble de données, souvent stockés dans un Map
ou dans une classe personnalisée qui agit comme une structure avec des accesseurs et modificateurs. Il est utilisé pour maintenir l'état et de partage de l'information au sein d'un système. Voir ce PDF pour une description approfondie. Bien qu'il peut être utilisé pour efficiente et efficace de partage de données, vous devez noter que beaucoup se méfient de l' Context
modèle comme un anti-modèle.
Un exemple pourrait être l'objet HttpSession: vous avez des attributs qui sont fondamentalement une carte avec des clés String et des éléments Object. Cela fournit des informations d'état entre les requêtes http. Un autre exemple est le ServletRequest qui fournit des informations d'état entre les servlets.
Voir Pouvez-vous expliquer un peu le modèle de conception de contexte? pour une description complète du motif.
Mon message là-bas explique également pourquoi ce n'est pas un anti-modèle - mais sa mise en œuvre bâclée l'est.
"Contexte" provient des "Informations contextuelles".
De Msu.edu:
Informations contextuelles: informations qui s'ajoutent au texte réel du document, telles que la date d'envoi, l'identité de l'expéditeur, l'identité du destinataire, les informations d'acheminement et les accusés de réception.
Dans la plupart des cadres (et donc le modèle de conception), un objet contextuel stocke des informations sur une demande entrante et corrobore une réponse.
Un objet de contexte encapsule serveur web HTTP spécifique de l'information de manière plus générale et format portable.
Il est utilisé lorsque:
- vous avez des composants et des services qui ont besoin d'accéder au système d'information.
- Vous souhaitez dissocier les composants de l'application et les services du protocole spécificités du système d'information.
- vous souhaitez exposer uniquement pertinentes de l'Api dans un contexte.
Utiliser un objet de contexte pour encapsuler l'état dans un protocole indépendant de façon à être partagés tout au long de votre application.
Pour plus de détails, voir cet article