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.