Design Pattern "Proxy" - Java - Programmation
Marsh Posté le 15-11-2005 à 14:02:05
didier1809 a écrit :
|
sisi elle est définie
Marsh Posté le 15-11-2005 à 14:03:43
bobuse a écrit : sisi elle est définie |
non, dans son exemple, la seule implementation de Canvas qu'il ait, c'est ce CanvasProxy.. va pas aller bien loin avec ça
Marsh Posté le 15-11-2005 à 15:13:39
Le principe du design pattern proxy est d'offrir le meme interface qu'un autre object et de "relayer" les appels.
C'est ce que fait la method addGraphicElement du proxy de canvas. Ce que cette method fait, ce n'est pas vraiment important a mon avis.
fab
Marsh Posté le 15-11-2005 à 20:14:13
bartleby a écrit : Le principe du design pattern proxy est d'offrir le meme interface qu'un autre object et de "relayer" les appels. |
Vu que tu à l'air de bien connaitre ce design pattern, est-ce que tu pourrais m'expliquer à l'aide d'un petit exemple complet ?
merci
Marsh Posté le 16-11-2005 à 20:02:01
Je me suis forme aux design patterns (les plus courants) sur ce site:
http://www.dofactory.com/Patterns/Patterns.aspx
Le proxy est ici (regarde le "structural code", c'est plus clair):
http://www.dofactory.com/Patterns/PatternProxy.aspx
Tu ne devrais avoir aucun mal a comprendre les exemples ; synthaxe C# et Java sont tres proches.
Pour synthetiser:
Tu as
- un client
- un object RealSubject qui fait le travail (ici, c'est afficher du text, mais ca peut etre un object situe sur une autre machine qui lance un travail de d'analyse de frequence par exemple.)
- un object Proxy qui pour chaque methodes appelle va appelle la methode du RealSubject.
RMI (Remote Method Invocation) et Corba fonctionnent avec ce pattern:
Tu manipules un proxy d'object local qui relait tes messages sur le server ou est reellement ton object distant.
Marsh Posté le 16-11-2005 à 21:31:12
MErci por cette explication, j'avais eu un peu de mal a faire le rapprochement avec RMI, mais c'est vrai que c'est le meme principe
Marsh Posté le 15-11-2005 à 11:34:59
J'ai un petit problèe de compréhension de ce design pattern...
J'ai comprit (a peu pres) le pricipe, qui conciste à appliquer sur le proxy plutot que sur l'objet les methodes que l'on veut.
Sur cet exemple :
Je ne comprend pas tres bien ce que fait la dernière ligne (c.addGraphic...(ge); ) vu que cette methode n'est pas définie :s
voici mon ptit prog pour essayer ce cas :
"main"
"interface"
"Proxy"
Merci de m'eclairer
---------------
.