1. Strategia:
definiuje rodzinę algorytmów, hermetyzuje każdy z nich i czyni je wymiennymi. Strategia pozwala algorytmowi różnić się niezależnie od klientów, którzy go używają.
2. Dekorator:
dołączanie dodatkowych obowiązków do obiektu dynamicznie. Dekoratory stanowią elastyczną alternatywę dla podklasowania w celu rozszerzenia funkcjonalności.
3. Metoda Factory
definiuje interfejs do tworzenia obiektu, ale niech podklasy decydują, którą klasę utworzyć. Metoda Factory pozwala klasie odroczyć instancję do podklas.,
4. Observer
definiuje zależność od jednego do wielu obiektów tak, że gdy jeden obiekt zmieni stan, wszystkie jego zależności są powiadamiane i aktualizowane automatycznie.
5. Łańcuch odpowiedzialności
unikaj łączenia nadawcy żądania z jego odbiorcą, dając więcej niż jednemu obiektowi możliwość obsługi żądania. Łańcuch obiektów odbierających i przekazywanie żądania wzdłuż łańcucha, dopóki obiekt go nie obsłuży.
6. Singleton
upewnij się, że klasa ma tylko jedną instancję i podaj globalny punkt dostępu do niej.
7., Flyweight
użyj dzielenia, aby efektywnie obsługiwać dużą liczbę drobnoziarnistych obiektów. Masa ciała to wspólny obiekt, który może być używany w wielu kontekstach jednocześnie. Flyweight działa jako niezależny obiekt w każdym kontekście; jest nie do odróżnienia od instancji obiektu, który nie jest współdzielony.
8. Adapter
konwertuje interfejs klasy na inny interfejs, którego oczekują klienci. Adapter pozwala klasom pracować ze sobą, które nie mogłyby inaczej z powodu interfejsów niekompatybilnych.
9. Fasada
zapewnia zunifikowany interfejs do zestawu interfejsów w systemie., Fasadę definiuje interfejs wyższego poziomu, który ułatwia korzystanie z podsystemu.
10. Szablon
definiuje szkielet algorytmu w operacji, odkładając niektóre kroki do podklas. Metoda szablonowa pozwala podklasom na Redefiniowanie pewnych kroków algorytmu bez zmiany struktury algorytmów.
11. Builder
oddziela konstrukcję złożonego obiektu od jego reprezentacji, tak aby te same procesy konstrukcyjne mogły tworzyć różne reprezentacje.
12., Iterator
zapewnia dostęp do elementów obiektu agregującego sekwencyjnie bez ujawniania jego podstawowej reprezentacji.
13. Composite
komponuje obiekty w struktury drzewiaste, aby reprezentować hierarchie część-Cała. Kompozyt pozwala klientowi traktować poszczególne obiekty i kompozycje obiektów jednolicie.
14. Polecenie
Enkapsuluje żądanie jako obiekt, umożliwiając w ten sposób sparametryzowanie klientów różnymi żądaniami, kolejkami lub logami oraz obsługę operacji niemożliwych do wykonania.
15., Mediator
definiuje obiekt, który określa sposób interakcji zestawu obiektów. Mediator Promuje luźne sprzężenie, powstrzymując obiekty od wyraźnego odniesienia się do siebie i pozwala zmieniać ich interakcję niezależnie.
16. Stan
pozwala obiektowi zmieniać jego zachowanie, gdy zmienia się jego stan wewnętrzny. Obiekt zmieni swoją klasę.
17. Proxy
zapewnia zastępczy lub zastępczy dla innego obiektu, aby kontrolować dostęp do niego.
18., Abstract Factory
zapewnia interfejs do tworzenia rodzin powiązanych lub zależnych obiektów bez określania ich konkretnych klas.
19. Bridge
oddziela abstrakcję od jej implementacji tak, że obie mogą się różnić niezależnie.
20. Interpreter
biorąc pod uwagę język, zdefiniuj reprezentację dla jego gramatyki wraz z interpreterem, który używa reprezentacji do interpretacji zdań w języku.
21., Memento
bez naruszania enkapsulacji, przechwytuje i uzewnętrznia wewnętrzny stan obiektu, tak aby obiekt mógł zostać przywrócony do tego stanu później.
22. Prototype
Określ rodzaje obiektów do utworzenia za pomocą wystąpienia prototypowego i utwórz nowe obiekty, kopiując ten prototyp.
23. Visitor
reprezentuje operację, którą należy wykonać na elementach struktury obiektu. Visitor pozwala zdefiniować nową operację bez zmiany klas elementów, na których ona działa.
Leave a Reply