0% ont trouvé ce document utile (0 vote)
9 vues18 pages

Introduction au Pattern Proxy en Java

Transféré par

zakariazakar84
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PPTX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
9 vues18 pages

Introduction au Pattern Proxy en Java

Transféré par

zakariazakar84
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PPTX, PDF, TXT ou lisez en ligne sur Scribd

LE PATTERN DE CONCEPTION

PROXY
P R É S E N TAT I O N
PROGRAMME

Introduction

Définition du Pattern Proxy

Implémentation en Java
Avantages & Inconvénients
Types de Proxys
Conclusion
INTRODUCTION

Dans les systèmes logiciels, il est souvent


nécessaire de contrôler l’accès à un
objet ou d’y ajouter des fonctionnalités
(comme la sécurité, ou la journalisation) sans
modifier son code source.
Le pattern Proxy répond à ce besoin en
agissant comme un intermédiaire entre le
client et l’objet réel.

3
CAS D’USAGE COURANTS :

• Accès sécurisé à une base de données.

• Chargement différé (lazy loading) d’objets


coûteux.

• Communication avec des services distants


(RPC, APIs).

4
DÉFINITION

"Le Proxy est un patron de conception structurel qui


fournit un substitut à un autre objet pour en contrôler
l’accès."

Autrement dit :

•Un objet Proxy sert de remplaçant à l’objet réel.

•Il intercepte les requêtes du client et décide


quand/pourquoi les transmettre à l’objet réel.

5
PRINCIPE DE FONCTIONNEMENT

Le Proxy repose
Interface Sujet
sur 3 composants :
•Définit les méthodes communes au Proxy et
au Sujet Réel.
1. Interface Sujet
Sujet Réel
2. Sujet Réel •Implémente la logique métier (ex: accès direct
3. Proxy à la base de données).
•Proxy
• Contient une référence vers le sujet réel.
• Ajoute des comportements avant/après
l’appel au sujet réel (ex: vérification des
droits, journalisation).

6
EXEMPLE CONCRET - PROXY D'IMAGE

Scénario :
"Une application gallery qui optimise le chargement
des photos lourdes"

Fonctionnement :

[Link] client utilise proxy image au lieu de real image

2.L'image réelle n'est chargée que lors du premier


affichage

[Link] appels suivants réutilisent l'image déjà


chargée
7
DIAGRAMME DE
CLASSES UML
PLONGÉE DANS LE
CODE
INTERFACE IMAGE

11
LA CLASSE REALIMAGE

12
LA CLASSE PROXYIMAGE

13
LE CODE CLIENT

14
AVANTAGES

• Contrôle d'accès granulaire : Sécurité (ex: vérification


des permissions)

• Optimisation des ressources :


• Lazy loading (chargement différé)

• Cache des objets coûteux

• Découplage : Le client ne dépend pas directement du sujet


réel

• Extensibilité : Ajout de fonctionnalités (logs, monitoring)


sans modifier l'objet original
15
INCONVÉNIENTS :

• Overhead : Légère latence due à l'intermédiaire

• Complexité accrue : Ajout d'une couche


supplémentaire au code

• Débogage difficile : Comportement moins


transparent (le Proxy masque des opérations)

16
CONCLUSION :

Pourquoi utiliser le Proxy ?

• Quand vous avez besoin de :


• Contrôler l'accès à un objet (sécurité, coût élevé)
• Optimiser les performances (lazy loading, caching)
• Travailler avec des objets distants (RPC, APIs)

Domaines d'application :

• Applications multimédias (chargement d'images/vidéos)


• Systèmes distribués (proxys réseau)
• ORM (Hibernate, Entity Framework) pour le lazy loading

17
MERCI

Réalisé par :
ZAKARIYA ZAKAR
AMINE ELMOUMEN
ILYASS R’BAAI

Vous aimerez peut-être aussi