Junior
Milyen tervezési mintákat ismer?
sobes.tech MI
Válasz az MI-től
Generáló:
- Singleton: Biztosítja, hogy csak egy példány létezik az osztályból, és globális hozzáférési pontot biztosít hozzá.
- Factory Method: Meghatározza az interfészt az objektum létrehozásához, de lehetővé teszi az alosztályok számára, hogy eldöntsék, melyik osztályt példányosítják.
- Abstract Factory: Interfészt nyújt kapcsolódó vagy függő objektumcsaládok létrehozásához anélkül, hogy meghatározná azok konkrét osztályait.
- Builder: Szétválasztja egy összetett objektum konstrukcióját lépésekre, lehetővé téve különböző reprezentációk létrehozását ugyanazzal a konstrukciós folyamattal.
- Prototype: Objektumokat hoz létre egy meglévő példány (prototype) másolásával, ahelyett, hogy újra végrehajtaná a konstrukciós folyamatot.
Strukturális:
- Adapter: Átalakítja egy osztály interfészét egy másik, a kliens által elvárt interfésszé. Lehetővé teszi inkompatibilis interfészekkel rendelkező osztályok együttműködését.
- Bridge: Elkülöníti az absztrakciót annak megvalósításától, lehetővé téve azok független változtatását.
- Composite: Objektumokat fastruktúrába szervez, hogy hierarchiákat képviseljenek "rész-egész" viszonyban. Lehetővé teszi az egyedi objektumokkal és összetett objektumokkal való egységes munkát.
- Decorator: Dinamikusan ad hozzá új felelősségeket az objektumhoz, azzal, hogy egy speciális dekorátor objektumba csomagolja.
- Facade: Egységes interfészt nyújt egy alrendszerhez tartozó több interfészhez. Egyszerűsíti az alrendszer használatát.
- Flyweight: Megosztott állapotot használ sok kis objektum között, csökkentve a memóriahasználatot és növelve a teljesítményt.
- Proxy: Egy helyettesítő objektumot biztosít, amely kezeli az eredeti objektumhoz való hozzáférést.
Viselkedéses:
- Chain of Responsibility: A kérés átadása a kezelők láncolatán keresztül. Minden kezelő eldönti, hogy kezeli-e a kérést vagy továbbítja a következőnek.
- Command: A kérés csomagolása objektumba, lehetővé téve a különböző kérésű kliensek paraméterezését, kérés sorba állítását vagy naplózását.
- Interpreter: Meghatározza a nyelv szintaktikai reprezentációját, és tartalmaz egy értelmezőt a mondatok értelmezéséhez.
- Iterator: Lehetővé teszi az összetett objektum összes eleméhez való sorozatos hozzáférést anélkül, hogy felfedné annak belső szerkezetét.
- Mediator: Meghatározza azokat az objektumokat, amelyek kezelik a kölcsönhatásokat más objektumok között. Gyengíti a kapcsolódást, lehetővé téve az objektumok közötti kommunikációt közvetítő nélkül.
- Memento: Lehetővé teszi az objektum belső állapotának mentését és visszaállítását anélkül, hogy megsértené az inkapszulációt.
- Observer: Meghatározza az "egy a sokhoz" függőséget az objektumok között, így amikor az egyik objektum állapota megváltozik, minden rá hivatkozó objektum értesítést kap és automatikusan frissül.
- State: Lehetővé teszi az objektum számára, hogy viselkedése a belső állapotától függően változzon. Minden állapot külön osztályba van inkapszulálva.
- Strategy: Meghatározza az algoritmuscsaládokat, mindegyiket inkapszulálja, és egymással helyettesíthetővé teszi azokat. Lehetővé teszi az algoritmus futás közbeni kiválasztását.
- Template Method: Meghatározza az algoritmus vázát egy műveletben, bizonyos lépéseket késleltetve az alosztályokra. Lehetővé teszi az alosztályoknak, hogy meghatározzák az algoritmus lépéseit anélkül, hogy megváltoztatnák az algoritmus szerkezetét.
- Visitor: Olyan műveletet képvisel, amelyet el kell végezni az objektumstruktúra elemein. Lehetővé teszi új műveletek definiálását anélkül, hogy megváltoztatná az elemek osztályait, amelyekre hatással van.