🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.java
4 messages
4 total messages Started by Jacek Czerwinski Sat, 17 Sep 2011 14:18
wzorzec Proxy, pytanie o tozsamosc
#152859
Author: Jacek Czerwinski
Date: Sat, 17 Sep 2011 14:18
16 lines
1349 bytes
Na ile "głęboko" się implementuje Proxy (i podobne wzorce) jakiejś 
klasy/interfejsu, czy się zupełnie ukrywa tożsamość 'tamtego'?

Np gdy przyszedł ten punkt, że rodzi się myśl:
"jeszcze tylko przeimplementujmy w proxy hashCode() i equals() *) i 
zwracajmy tożsamość tamtego obiektu, będzie super" ...

to jest ty myśl:
a) genialna
b) taka sobie
c) świadczy o fatalnym projekcie

Nie pytam o implementację (w postaci kodu Javy czy kodu pośredniego), 
tylko o ocenę projektową takiego myślenia. Nie mam dystansu do tego problemu

*) oczywiście można iść w tym myśleniu nawet dalej.
Re: wzorzec Proxy, pytanie o tozsamosc
#152860
Author: William Bonawentura
Date: Mon, 19 Sep 2011 05:41
4 lines
1260 bytes
IMHO coś jest nie tak. Jeśli mamy proxy, to obiekt oryginalny nie powinien 
być znany "klientowi". Jeśli zaś tak jest, to nigdy nie zastosuje on equals 
do porównania naszego proxy z oryginalnym bytem. Idąc krok dalej wpadniesz w 
paranoję, by getClass() obiektu proxy zwróciło fałszywie oryginalną klasę...
Re: wzorzec Proxy, pytanie o tozsamosc
#152861
Author: Jacek Czerwinski
Date: Mon, 19 Sep 2011 06:07
16 lines
1643 bytes
W dniu 2011-09-19 07:41, William Bonawentura pisze:
> IMHO coś jest nie tak. Jeśli mamy proxy, to obiekt oryginalny nie
> powinien być znany "klientowi". Jeśli zaś tak jest, to nigdy nie
> zastosuje on equals do porównania naszego proxy z oryginalnym bytem.
> Idąc krok dalej wpadniesz w paranoję, by getClass() obiektu proxy
> zwróciło fałszywie oryginalną klasę...
>

Właśnie, coś mi migało pomarańczowe światełko ...

Początek tej myśli był taki, to żeby obiekt oryginalny i jego opakowanie 
były "tym samym" w kontenerze (np. Set) w konsekwentnej filozofii: 
pierwszy jest lepszy lub innej.
A zupełnie pierwotne zagadnienie, to swoisty 'alias' obiektów, niby ten 
sam, ale nie do końca, tym niemniej zastępujący go.
Przemyślę to inaczej...
Re: wzorzec Proxy, pytanie o tozsamosc
#152862
Author: sielim
Date: Mon, 19 Sep 2011 07:02
29 lines
2255 bytes
Użytkownik "Jacek Czerwinski" <x@y.z.pl> napisał w wiadomości 
news:j52a7l$vjf$1@news.onet.pl...
> Na ile "głęboko" się implementuje Proxy (i podobne wzorce) jakiejś 
> klasy/interfejsu, czy się zupełnie ukrywa tożsamość 'tamtego'?
>
> Np gdy przyszedł ten punkt, że rodzi się myśl:
> "jeszcze tylko przeimplementujmy w proxy hashCode() i equals() *) i 
> zwracajmy tożsamość tamtego obiektu, będzie super" ...
>
> to jest ty myśl:
> a) genialna
> b) taka sobie
> c) świadczy o fatalnym projekcie
>
> Nie pytam o implementację (w postaci kodu Javy czy kodu pośredniego), 
> tylko o ocenę projektową takiego myślenia. Nie mam dystansu do tego 
> problemu
>
> *) oczywiście można iść w tym myśleniu nawet dalej.

IMO wzorzec Proxy ma przede wszystkim zastosowanie do wszelkiej maści
zadań związanych z dostarczaniem jakichś funkcji, usług - tam gdzie 
pojawiają
się abstrakcyjne interfejsy i ich implementacje. Natomiast temat
tożsamości obiektów wychodzi głównie tam, gdzie mamy do czynienia
z przechowywaniem i przesyłaniem danych, których generalnie się za
interfejsami nie ukrywa. Tak więc moim zdaniem problem,
który przedstawiłeś wynika ze słabego rozdziału między jednym a drugim. 
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads