Proxy (patron de conception)
En programmation, un proxy est un patron de conception.
Pour l’article ayant un titre homophone, voir Proxy (homonyme).
Un proxy est une classe se substituant à une autre classe. Par convention et simplicité, le proxy implémente la même interface que la classe à laquelle il se substitue[1]. L'utilisation de ce proxy ajoute une indirection à l'utilisation de la classe à substituer[1].
Usage
Un proxy est utilisé principalement pour contrôler l'accès aux méthodes de la classe substituée[1]. Il est également utilisé pour simplifier l'utilisation d'un objet « complexe » à la base : par exemple, si l'objet doit être manipulé à distance (via un réseau) ou si l'objet est consommateur de temps[1].
Propriétés
- Un proxy est un cas particulier du patron de conception état ;
- Un proxy implémente une et une seule interface (donc une seule classe) ;
- Un état peut implémenter un nombre quelconque d'interfaces ;
- Un état est utilisé pour changer dynamiquement d'interface.
Types
Il existe différents types de proxy :
- Remote proxy : fournit une référence sur un objet situé sur un espace d'adressage différent, sur la même machine ou sur une autre ;
- Virtual proxy ;
- Copy-on-write proxy ;
- Protection (access) proxy ;
- Firewall proxy ;
- Synchronization proxy ;
- Smart reference proxy.
Références
- (en) Erich Gamma, Richard Helm, Ralph Johnson et John Vlissides, Design Patterns : Elements of Reusable Object-Oriented Software, Addison-Wesley, , 395 p. (ISBN 0-201-63361-2, lire en ligne), p. 233-245
Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.