Zpo-5-wyk-Slajd34: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Bwalter (dyskusja | edycje)
Nie podano opisu zmian
 
Bwalter (dyskusja | edycje)
Nie podano opisu zmian
 
Linia 1: Linia 1:
==Comments==
==Proxy: struktura==


[[Image:zpo-5-wyk-Slajd34.PNG|Comments]]
[[Image:zpo-5-wyk-Slajd34.PNG|Proxy: struktura]]




Nadmiar komentarzy jest zapachem o niewielkiej dokuczliwości, ale warto o nim wspomnieć, ponieważ budzi on naturalne i zrozumiałe kontrowersje. Pełne dokumentowanie kodu źródłowego jest przecież oczywistym postulatem inżynierii oprogramowania; zaleca się programistom, aby komentowali każdą istotną decyzję odpowiednią adnotacją.
Centralnym elementem wzorca jest interfejs Subject, który posiada wiele implementacji. Jedną z nich jest obiekt RealSubject –  obiekt docelowy posiadający funkcjonalność wymaganą przez klienta. Drugą – obiekt proxy, który posiada referencję do obiektu RealSubject i kontroluje do niego dostęp.  


Nadmiarem komentarzy nazywana jest sytuacja, w której komentarz zawiera dokładnie te same informacje i na tym samym poziomie czytelności, co sam kod źródłowy. W ten sposób komentarz staje się niepotrzebnym duplikatem, który sam w sobie wymaga pielęgnacji i aktualizacji.
Celem takiego powiązania obiektów jest umożliwienie zastąpienia obiektu docelowego obiektem Proxy: klient, zamiast do obiektu docelowego, odwołuje się do obiektu Proxy, który deleguje żądania do niego lub próbuje obsługiwać je samodzielnie. W szczególności obiekt Proxy może utworzyć obiekt RealSubject znacznie później niż klient może korzystać z niego, a tym samym opóźnić inicjację tego obiektu. Pozwala to m.in. na oszczędność czasu i innych zasobów.
 
Jeżeli struktura kodu jest tak skomplikowana, że wymaga rozbudowanego komentarza, wówczas konieczna jest jej modyfikacja. Podstawowym rozwiązaniem jest, jak w wielu podobnych przypadkach, utworzenie nowej metody. Bardzo ważne jest nazewnictwo metod, aby intuicyjnie odzwierciedlało ono zadania stojące przed metodą. Czasem czytelność jest wzmacniana poprzez wprowadzenie asercji, która w odróżnieniu od komentarza jest weryfikowana w momencie wykonywania programu, a jej naruszenie jest zgłaszane programiście.




[[zpo-5-wyk-Slajd33 | << Poprzedni slajd]] | [[zpo-5-wyk-toc|Spis treści ]] | [[zpo-5-wyk-Slajd35 | Następny slajd >>]]
[[zpo-5-wyk-Slajd33 | << Poprzedni slajd]] | [[zpo-5-wyk-toc|Spis treści ]] | [[zpo-5-wyk-Slajd35 | Następny slajd >>]]

Aktualna wersja na dzień 11:03, 17 paź 2006

Proxy: struktura

Proxy: struktura


Centralnym elementem wzorca jest interfejs Subject, który posiada wiele implementacji. Jedną z nich jest obiekt RealSubject – obiekt docelowy posiadający funkcjonalność wymaganą przez klienta. Drugą – obiekt proxy, który posiada referencję do obiektu RealSubject i kontroluje do niego dostęp.

Celem takiego powiązania obiektów jest umożliwienie zastąpienia obiektu docelowego obiektem Proxy: klient, zamiast do obiektu docelowego, odwołuje się do obiektu Proxy, który deleguje żądania do niego lub próbuje obsługiwać je samodzielnie. W szczególności obiekt Proxy może utworzyć obiekt RealSubject znacznie później niż klient może korzystać z niego, a tym samym opóźnić inicjację tego obiektu. Pozwala to m.in. na oszczędność czasu i innych zasobów.


<< Poprzedni slajd | Spis treści | Następny slajd >>