Wzorzec projektowy pełnomocnik - proxy
Stronę tą wyświetlono już: 3496 razy
Opis wzorca projektowego pełnomocnik
Wzorzec projektowy pełnomocnik należy do wzorców strukturalnych. Jego celem jest utworzenie obiektu, który kontroluje inny obiekt. Wzorzec ten może być wykorzystany np. do inicjacji zawartego wewnątrz obiektu dopiero w momencie próby wykonania na nim jakiejś operacji. Przyczyną takiego stanu rzeczy może być fakt, że obiekt nie zawsze będzie potrzebny a jego utworzenie jest czasochłonne.
Przykład diagramu UML dla wzorca projektowego pełnomocnik
Na poniższym diagramie UML można zobaczyć interfejs iImage oraz dziedziczące po nim klasy ImageProxy (będąca pełnomocnikiem) i Image (agregowana przez pełnomocnika). W tej implementacji klasa Image dysponuje statycznym konstruktorem createImage, który sprawdza, czy plik graficzny istnieje a następnie zwraca wskaźnik na nowo utworzony obiekt tejże klasy. Jeżeli plik nie istnieje zwracany będzie NULL.
Klasa ImageProxy tworzy obiekt klasy Image dopiero, gdy będzie wywołana po raz pierwszy metoda draw.
Przykładowa implementacja wzorca projektowego pełnomocnik w C++
Wynik działania powyższego kodu:
Create ImageProxy object!!! Inicjalize Image object!!! Create ImageProxy!!! Draw hight resolution image Delete ImageProxy!!! Image object destroyed End of delete ImageProxy!!!
Tytuł:
C++. Projektowanie oprogramowania. Zasady i wzorce projektowe
Autor:
Klaus Iglberger
Tytuł:
Wzorce projektowe. Rusz głową! Tworzenie rozszerzalnego i łatwego w utrzymaniu oprogramowania obiektowego. Wydanie II
Autor:
Eric Freeman, Elisabeth Robson
Tytuł:
React 17. Wzorce projektowe i najlepsze praktyki. Projektowanie i rozwijanie nowoczesnych aplikacji internetowych. Wydanie III
Autor:
Carlos Santana Roldán
Tytuł:
Wzorce projektowe. Rusz głową! Tworzenie rozszerzalnego i łatwego w utrzymaniu oprogramowania obiektowego. Wydanie II
Autor:
Eric Freeman, Elisabeth Robson
Tytuł:
Wzorce projektowe w .NET Core 3. Projektowanie zorientowane obiektowo z wykorzystaniem C# i F#
Autor:
Dmitri Nesteruk
Tytuł:
Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku
Autor:
Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
Tytuł:
Projektowanie interfejsów., Sprawdzone wzorce projektowe. Wydanie III
Autor:
Jenifer Tidwell, Charles Brewer, Aynne Valencia-Brooks
Tytuł:
Kubernetes. Wzorce projektowe. Komponenty wielokrotnego użycia do projektowania natywnych aplikacji chmurowych
Autor:
Bilgin Ibryam, Roland Huß
Tytuł:
Wzorce projektowe w .NET. Projektowanie zorientowane obiektowo z wykorzystaniem C# i F#
Autor:
Dmitri Nesteruk
Tytuł:
Programowanie zorientowane obiektowo. Wzorce projektowe. Wydanie II
Autor:
Alan Shalloway, James R. Trott