Wzorce Projektowe, źródło książkowe

Znajomość wzorców projektowych zdaje się być jedną z ważniejszych umiejętności posiadanych przez wprawnego programistę. Dlaczego jest zatem tak, że nie każdy programista je zna? Składa się na to kilka współczynników. Po pierwsze: wzorce wymagają pewnego doświadczenia programistycznego, aby podczas nauki … czytaj dalej…

Wzorce projektowe: Visitor

W aplikacjach często wykorzystuje się kolekcje takie jak List, Set, Map czy pochodne. W kolekcjach tych przetrzymuje się obiekty różnego typu. Nie jednokrotnie także buduje się kolekcje o budowie hierarchicznej, np. za pomocą wzorca Composite. Są sytuajcje, gdy musimy przeiterować … czytaj dalej…

Wzorce projektowe: Memento

Memento jest wzorcem, którego wykorzystuje w sytuacji gdy musimy zamrozić stan obiektu w celu jego późniejszego wykonania. Na przykład tak działa Undo. Drugim częstym sposobem na wykorzystanie wzorca memento jest zapamiętywanie wyników zapytań bazy danych w celu ich ponownego późniejszego … czytaj dalej…

Wzorce projektowe: Mediator

Wzorzec operacyjny Mediator jest wykorzystywany do skupiania złożonych procedur komunikacji i sterowania w środowisku powiązanych obiektów. Obiekty w systemie zamiast komunikować się między sobą bezpośrednio robią to poprzez klasę Mediatora – nie muszą wtedy wiedzieć o swoim własnym istnieniu bezpośrednio. … czytaj dalej…

Wzorce projektowe: Iterator

Iterator jest operacyjnym wzorcem projektowym, którym zapewnia metodę dostępu sekwencyjnego do elementów obiektu zagregowanego bez ujawniania jego reprezentacji wewnętrznej. Obecnie od czasu java 5 i pojawieniu się typów generycznych wzorzec iteratora stracił na wadze. Typy generyczne pełnią kontrolę nad zwracanymi … czytaj dalej…

Wzorce projektowe: Flyweight

Flyweight jest strukturalnym wzorcem projektowym, którego zadaniem jest zmniejszenie ilości instancji klas w aplikacji. Jest bardzo zbliżony do Singleton’a i często Singleton jest wykorzystywany we wzorcu Flyweight. Czasami zdaża się, że potrzebujemy na prawdę wielkiej ilości małych obiektów. Np. rysując … czytaj dalej…

Wzorce projektowe: State

Wzorzec State jest wzorcem operacyjnym, który posiada wiele implementacji i może się przełączać pomiędzy nimi podczas działania programu. Zmiana może być spowodowana interakcją użytkownika lub też automatycznie przez klasę kliencką jako odpowiedź na wykonaną akcję. Korzystanie z wzorca eliminuje wiele … czytaj dalej…

Wzorce projektowe: Proxy

Proxy jest strukturalnym wzorcem projektowym wykorzystywanym do reprezentowania skomplikowanego obiektu lub obiektu, którego utworzenie wymaga dużego nakładu czasu, za pomocą obiektu prostego. Jeżeli tworzenie obiektu jest czasochłonne lub zasobożerne, Proxy pozwala odłożyć akt tworzenia tego obiektu na czas, w którym … czytaj dalej…