Sobes.tech
Middle

Milyen tervezési mintákat ismer?

sobes.tech MI

Válasz az MI-től

Készítők:

  • Gyármetódus (Factory Method): Meghatározza az interfészt egy 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.
  • Absztrakt gyár (Abstract Factory): Interfészt nyújt kapcsolódó vagy egymással függő objektumcsaládok létrehozásához anélkül, hogy meg kellene határozni azok konkrét osztályait.
  • Építő (Builder): Elkülöníti egy összetett objektum felépítését a megjelenítésétől, lehetővé téve ugyanazon felépítési folyamat különböző megjelenítések létrehozását.
  • Prototípus (Prototype): Új objektumokat hoz létre meglévő példány másolásával.
  • Singleton (Singleton): Biztosítja, hogy egy osztálynak csak egy példánya legyen, és globális hozzáférést biztosít ehhez.

Szerkezeti:

  • Adapter (Adapter): Átalakítja egy osztály interfészét egy másikra, amelyet az ügyfelek elvárnak.
  • Híd (Bridge): Elkülöníti az absztrakciót a megvalósítástól, hogy azok függetlenül változhassanak.
  • Kompozit (Composite): Objektumokat fákba rendez, hogy rész-egész hierarchiákat reprezentáljon. Lehetővé teszi az ügyfelek számára, hogy egységesen kezeljenek egyedi objektumokat és azok összetételeit.
  • Díszítő (Decorator): Dinamikusan ad hozzá új felelősségeket egy objektumhoz. Rugalmas alternatíva az alosztályozás helyett a funkcionalitás bővítésére.
  • Fasád (Facade): Egységes interfészt nyújt egy alrendszerhez, megkönnyítve annak használatát.
  • Flyweight (Flyweight): Hatékonyan oszt meg sok hasonló objektumot.
  • Proxy (Proxy): Egy helyettesítő objektumot biztosít, amely ellenőrzi a hozzáférést egy másik objektumhoz.

Viselkedés:

  • Felelősségi lánc (Chain of Responsibility): Lehetővé teszi a kérések sorozatos továbbítását kezelők láncán keresztül. Minden kezelő eldönti, hogy feldolgozza-e a kérést vagy továbbítja a következőnek.
  • Parancs (Command): Objektummá csomagolja a kérést, lehetővé téve a kliensek számára, hogy különböző kérésekkel paraméterezzenek, sorba állítsák vagy naplózzák azokat, valamint támogatják a visszavonási műveleteket.
  • Iterátor (Iterator): Egy módot kínál az összetett objektum elemeinek szekvenciális hozzáférésére anélkül, hogy feltárná belső szerkezetét.
  • Közvetítő (Mediator): Egy objektumot határoz meg, amely beburkolja, hogyan lépnek kölcsönhatásba az objektumok. Gyengíti a kötést, elkerülve az objektumok közvetlen hivatkozásait.
  • Memento (Memento): Megőrzi és külsőleg tárolja egy objektum belső állapotát anélkül, hogy megsértené az inkapszulációt, így később visszaállítható erre az állapotra.
  • Megfigyelő (Observer): Egy "egy a sok" típusú függőséget határoz meg az objektumok között, így amikor egy objektum állapota változik, az összes rá hivatkozó automatikusan értesül és frissül.
  • Állapot (State): Lehetővé teszi egy objektumnak, hogy viselkedése változzon az állapotának változásával. Úgy tűnik, mintha az objektum osztálya változna.
  • Stratégia (Strategy): Egy algoritmuscsaládot határoz meg, mindegyiket kapszulázza, és cserélhetővé teszi őket. Lehetővé teszi az algoritmus független változtatását a kliensektől.
  • Sablon módszer (Template Method): Meghatározza egy algoritmus vázát egy műveletben, bizonyos lépéseket az alosztályokra hagyva. Lehetővé teszi az alosztályok számára, hogy felülírják az algoritmus bizonyos lépéseit anélkül, hogy megváltoztatnák annak szerkezetét.
  • Látogató (Visitor): Egy műveletet reprezentál, amelyet el kell végezni az objektumok struktúrájának elemein. Lehetővé teszi új művelet meghatározását anélkül, hogy megváltoztatná az elemek osztályait.