Sobes.tech
Middle

Jakie wzorce projektowe znasz?

sobes.tech AI

Odpowiedź od AI

  • Twórcze:
    • Metoda fabryczna: Tworzenie obiektów za pomocą interfejsu bez wskazywania konkretnej klasy.
    • Fabryka abstrakcyjna: Tworzenie rodzin powiązanych lub zależnych obiektów bez wskazywania ich konkretnych klas.
    • Budowniczy: Stopniowe tworzenie złożonego obiektu, umożliwiające użycie tego samego kodu konstrukcyjnego do uzyskania różnych reprezentacji obiektu.
    • Prototyp: Tworzenie nowych obiektów przez kopiowanie istniejących.
    • Singleton: Zapewnia, że klasa ma tylko jedną instancję i udostępnia globalny punkt dostępu do niej.
  • Strukturalne:
    • Adapter: Konwertuje interfejs jednej klasy na inny, którego oczekują klienci.
    • Most: Oddziela abstrakcję od implementacji tak, aby mogły się one zmieniać niezależnie.
    • Kompozyt: Pozwala grupować obiekty w struktury drzewiaste do reprezentowania hierarchii część-całość.
    • Dekorator: Dynamicznie dodaje nowe obowiązki obiektowi, opakowując go w obiekty-dekoratory.
    • Fasada: Uproszczony interfejs do złożonego podsystemu.
    • Flyweight: Pozwala przechowywać w pamięci dużą liczbę małych obiektów, dzieląc ich wspólny stan.
    • Proxy: Zapewnia substytut lub reprezentację innego obiektu do kontrolowania dostępu do niego.
  • Behawioralne:
    • Łańcuch obowiązków: Pozwala przekazywać żądania wzdłuż łańcucha obsługujących.
    • Komenda: Zamienia żądanie na samodzielny obiekt zawierający wszystkie informacje o żądaniu.
    • Iterator: Umożliwia sekwencyjny dostęp do wszystkich elementów obiektu złożonego bez ujawniania jego wewnętrznej reprezentacji.
    • Mediator: Definiuje obiekt, który kapsułkuje sposób interakcji zbioru obiektów.
    • Memento: Pozwala zapisać i przywrócić poprzedni stan obiektu bez ujawniania szczegółów jego implementacji.
    • Obserwator: Definiuje zależność jeden-do-wielu między obiektami, tak że gdy jeden zmienia stan, wszystkie zależne od niego są powiadamiane i automatycznie aktualizowane.
    • Stan: Pozwala obiektowi zmienić swoje zachowanie w zależności od wewnętrznego stanu.
    • Strategia: Definiuje rodzinę algorytmów, kapsułkuje je i czyni je wymienialnymi.
    • Metoda szablonowa: Definiuje szkielet algorytmu w operacji, pozostawiając niektóre kroki podklasom.
    • Odwiedzający: Reprezentuje operację, która ma być wykonana na elementach struktury obiektów.

Również zaznajomiony z antipatternami i zasadami SOLID.