Przejdź do treści głównej
INF.04Programowanie Obiektowe i Paradygmaty (OOP)

Wzorce projektowe (Design Patterns GoF)

Sprawdzone, uniwersalne i wielokrotnie wykorzystywane schematy rozwiązań typowych, powtarzających się problemów architektonicznych w programowaniu obiektowym.

Czym są wzorce projektowe?

Wzorzec projektowy to sformalizowany opis i szablon rozwiązania często występującego problemu programistycznego, sklasyfikowany w klasycznej książce Gang of Four (GoF - Gamma, Helm, Johnson, Vlissides).

Trzy główne kategorie wzorców GoF:

  1. Wzorce kreacyjne (Creational) – zarządzają procesem tworzenia obiektów:
    • Singleton: Zapewnia istnienie tylko jednej instancji klasy i globalny punkt dostępu do niej.
    • Fabryka (Factory Method / Abstract Factory): Deleguje proces tworzenia konkretnych instancji do podklas/metod fabrykujących.
    • Budowniczy (Builder): Rozdziela konstrukcję złożonego obiektu od jego reprezentacji.
  2. Wzorce strukturalne (Structural) – opisują kompozycję klas i obiektów:
    • Adapter: Umożliwia współpracę klasom o niekompatybilnych interfejsach.
    • Dekorator: Dynamicznie dodaje nowe zachowania i odpowiedzialności do obiektów bez modyfikacji ich kodu.
    • Fasada (Facade): Zapewnia uproszczony, ujednolicony interfejs do skomplikowanego podsystemu.
  3. Wzorce behawioralne (Behavioral) – definiują komunikację i podział obowiązków między obiektami:
    • Obserwator (Observer): Mechanizm powiadamiania wielu obiektów o zmianie stanu obiektu obserwowanego (wzorzec Publish-Subscribe).
    • Strategia (Strategy): Definiuje rodzinę wymiennych algorytmów zamkniętych w osobnych klasach.

Pułapki na egzaminie INF.04:

  • Pytania na egzaminie często pytają o kategorię wzorca (np. 'Do jakiej grupy wzorców należy Singleton?' – odpowiedź: kreacyjne; 'Adapter?' – odpowiedź: strukturalne).

Chcesz sprawdzić to pojęcie w praktyce?

Przeszukaj pytania z oficjalnych arkuszy CKE powiązane z hasłem Wzorce projektowe (Design Patterns GoF) lub rozpocznij trening.