You are on page 1of 2

TERVEZÉSI MINTÁK

Meghatározás: Egymással kommunikáló osztályok és objektumok leírása, amelyek egy általános tervezési
feladat megoldására alkalmasak.

Egyszerű és elegáns megoldása az objektumorientált szoftvertervezés során felmerülő sajátos


problémáknak. A kapott alkalmazás így könnyebben igazodik a változtatásokhoz.

 Rugalmasság és újrafelhasználhatóság jellemzi.

Négy alapvető eleme van:

1. a minta neve,
2. a feladat (probléma),
3. a megoldás,
4. a következmények.

Osztályozás CÉL

Létrehozási Szerkezeti Viselkedési


(gyártási, létrehozó) (strukturális) (kapcsolatteremtő, működés)
 Factory Method  Adapter (Osztály) Illesztő)  Interpreter (Értelmező)
Osztály (Gyártófüggvény)  Template Method
(Sablonfüggvény)
 Abstract Factory (Elvont  Adapter ((Objektum)  Chain of Responsibility
gyár) Illesztő) (Felelősséglánc)
 Builder (Építő)  Bridge (Híd)  Command (Parancs)
Hatókör  Prototype (Prototípus)  Composite (Összetétel)  Iterator (Bejáró)
Objektu  Singleton (Egyke)  Decorator (Díszítő)  Mediator (Közvetítő)
m  Facade (Homlokzat)  Memento (Emlékeztető)
 Flyweight (Pehelysúlyú)  Observer (Megfigyelő)
 Proxy (Helyettes)  State (Állapot)
 Strategy (Stratégia)
 Visitor (Látogató)

Struktúramodellezés Viselkedésmodellezés

 Osztálydiagram (class diagram)  Használati eset diagram (use case diagram)


 Objektumdiagram (object diagram)  Szekvenciadiagram (sequence diagram)
 Komponensdiagram (component diagram)  Együttműködési diagram (collaboration diagram)
 Telepítési diagram (deployment diagram)  Állapotdiagram (state diagram)
 Aktivitásdiagram (tevékenységdiagram, activity diagram)

A Csomópont osztályhierarchia

 Hátrányok: a típus-ellenőrző és formázó, stb. kódok keverednek.


 Nehéz új műveletet hozzáadni.
 Jobb, ha a műveleteket látogatókba csomagoljuk.
Abstract Factory tervezési minta :

Egy megfelelő felületet (interfészt) biztosít annak érdekében, hogy egymáshoz kapcsolódó, vagy egymástól függő
objektumok sokaságait hozzuk létre anélkül, hogy a nekik megfelelő osztályokat konkrét módon megadnánk.

Composite (Összetétel) tervezési minta:

A különböző objektumokból egy fa struktúrát alkot annak érdekében, hogy a rész-egész viszonyokat kifejezze.

 Ez által az ügyfelek egységesen kezelhetik a különálló és az összetett objektumokat.

Decorator (Díszítő) tervezési minta : Egy objektumot dinamikus módon további felelősséggel látunk el.

 Ez a minta az alosztályok létrehozásának rugalmas alternatívája a kiegészítő szolgáltatások biztosításának


terén

Bejáró (Iterator) tervezési minta :

Egy összesített objektum (aggregátum) elemeinek szekvenciális módon történő elérését biztosítja anélkül, hogy
felfednénk az objektum belső ábrázolását. Példa összesített objektumra: lista, verem, bináris fa, stb.

 Pl. A lista elemeinek szolgáltatását egy külön objektum (a bejáró) biztosítja.

Observer (Megfigyelő) tervezési minta :

Függőségi kapcsolatot hoz létre egy adott objektum (alany) és több különböző objektum között.

 Ha az alany állapota megváltozik, a tőle függő objektumok értesítve és automatikusan frissítve lesznek.

Proxy (Helyettes) tervezési minta : Egy objektumot képviselőn (helyörzőn) keresztül irányít.

 Így szorosabban felügyelhető a működése.


 Alkalmazhatóság: Távoli helyettes, Virtuális helyettes, Védelmi helyettes, Okos helyettes

Command (Parancs) tervezési minta

 A kérelmeket objektumokba zárjuk.


 Ezeket az ügyfeleknek paraméterként adhatjuk át.
 A kérelmek sorbarendezhetők és visszavonásukra is lehetőség van.

Strategy (Stratégia) tervezési minta célja:

Algoritmus-család meghatározása úgy, hogy az algoritmusokat külön-külön egységbe zárjuk és egymással


felcserélhetővé tesszük.

 Ez által az algoritmus az őt felhasználó ügyféltől függetlenül változtatható.

Látogató (Visitor) tervezési minta célja

 Egy objektumszerkezet elemein végrehajtandó műveletet ábrázol.


 Egy új műveletet a nélkül vezethetünk be, hogy a benne részt vevő elemek osztályát meg kellene
változtatni.

You might also like