logo

Tervezési minták osztályozása

A tervezési minták alapvetően három kategóriába sorolhatók: Kreatív tervezési minta, szerkezeti tervezési minta és viselkedési tervezési minta. Ezek részletezettségük, összetettségük és a teljes rendszerre való alkalmazhatóságuk mértéke alapján különböznek egymástól.

Kétféle minta is létezik - idiómák és építészeti minták. De ebben az oktatóanyagban nem vizsgáljuk meg őket.

Kreatív tervezési minta

Ahogy a neve is sugallja, ez biztosítja az objektum vagy osztályok létrehozásának mechanizmusát, amely növeli a meglévő kód rugalmasságát és újrafelhasználhatóságát. Csökkentik a függőséget és a használat interakciójának szabályozását az osztályunkkal, hogy ne foglalkozzunk a bonyolult felépítéssel. Az alábbiakban bemutatjuk a kreatív tervezési minták különböző tervezési mintáit.

Absztrakt gyár- Lehetővé teszi objektumok létrehozását anélkül, hogy megadnánk konkrét típusukat.

Építő - Összetett objektumok létrehozására szolgál.

Gyári módszer - Lehetővé teszi számunkra, hogy objektumot hozzunk létre anélkül, hogy megadnánk a létrehozandó pontos osztályt.

Prototípus - Új objektum létrehozására szolgál a meglévő objektumból.

10/100

Singleton - Egyetlen tervezési minta győződjön meg arról, hogy az objektumnak csak egy példánya jön létre.

Strukturális tervezési minták

A strukturális tervezési minták főként az objektumok és osztályok nagyobb struktúrába való összeállításáért felelősek, biztosítva, hogy ezek a struktúrák rugalmasak és hatékonyak legyenek. Nagyon fontosak a kód olvashatóságának és karbantarthatóságának javításához. Azt is biztosítja, hogy a funkciók megfelelően el legyenek különítve, be vannak zárva. Csökkenti az egymásra utalt dolgok közötti minimális interfészt.

Adapter - Lehetővé teszi számunkra, hogy két inkompatibilis osztály működjön együtt azáltal, hogy egy felületet körbevesz az egyik meglévő osztály köré.

Kompozit - Egy objektumcsoportot csomagol egyetlen objektummá.

híd - Leválaszt egy absztrakciót, így két osztály egymástól függetlenül változhat.

lakberendező - Dinamikusan kiterjeszti az objektum viselkedését futási időben.

Homlokzat - Egyszerű felületet kínál a bonyolultabb mögöttes objektumok számára.

légysúly - Csökkenti az összetett objektummodell költségeit.

Proxy - Csökkenti a költségeket, csökkenti a bonyolultságot, és helyőrző felületet biztosít egy mögöttes objektum számára a hozzáférés szabályozásához.

Viselkedés tervezési minta

A viselkedéstervezési minták felelősek azért, hogy az egyik osztály hogyan kommunikál másokkal.

Felelősségi lánc - Ez képviseli a parancsot egy feldolgozó objektum láncához.

Parancs - Olyan objektumokat állít elő, amelyek a paraméterek műveleteit foglalják magukba.

tolmács - Speciális nyelvet valósít meg.

Iterátor - Egy objektum összes eleméhez szekvenciálisan hozzáfér anélkül, hogy megsértené annak mögöttes reprezentációját.

entitás relációs

Közvetítő - Ez biztosítja az osztályok közötti laza csatolást, mivel az egyetlen osztály, amely részletesen ismeri meglévő metódusait.

Mementó - Visszaállítja az objektumot az előző állapotba.

Megfigyelő - Ez lehetővé teszi számos megfigyelő objektum számára, hogy lásson egy eseményt.

Állapot - Lehetővé teszi egy objektum számára, hogy módosítsa viselkedését, ha belső állapota megváltozik.

Stratégia - Ez biztosítja a futási időben kiválasztandó algoritmuscsaládok egyikét.

Sablon módszer - Lehetővé teszi az alosztályok számára, hogy konkrét viselkedést biztosítsanak. Egy algoritmus vázát is absztrakt osztályként határozza meg.

Látogató - A metódusok hierarchiájának egyetlen objektumba helyezésével választ el egy algoritmust az objektumstruktúrától.

Megtanulunk néhány fontos tervezési mintát a következő oktatóanyagban.