CodeGym /Java blog /Véletlen /Tervezési minták Java nyelven [1. rész]
John Squirrels
Szint
San Francisco

Tervezési minták Java nyelven [1. rész]

Megjelent a csoportban
Ez egy rövid cikk a Java tervezési mintáiról. Nem lesz semmilyen mintamegvalósítás, csak a Java minták listája, mindegyikük rövid leírásával. Azoknak, akik már ismerik a témát, ez hasznos lesz áttekintésként és összefoglalóként. Ezzel szemben azok, akik először ismerkednek a mintákkal, hasznosak lesznek ebből a téma kezdeti áttekintéséből, mielőtt mélyebbre ásnának. Tervezési minták Java nyelven [1. rész] - 1 Tervezési mintákhasználatra kész megoldások a gyakran előforduló programozási feladatokhoz. Ez nem egy osztály vagy könyvtár, amely egy projekthez kapcsolható. Ez valami több. Az egyes feladatokhoz megfelelő tervezési minták minden konkrét esetben megvalósulnak. Ne feledje, hogy ha helytelenül vagy nem megfelelő feladatra alkalmazzák, a tervezési minta sok problémát okozhat. A megfelelően alkalmazott minta azonban segíthet a feladatok egyszerű és egyszerű elvégzésében.

A minták típusai:

  • teremtő
  • szerkezeti
  • viselkedési
A kreatív minták inicializálási mechanizmusokat biztosítanak, lehetővé téve az objektumok kényelmes módon történő létrehozását. Strukturális minták határozzák meg az osztályok és az objektumok közötti kapcsolatokat, lehetővé téve számukra az együttműködést. A viselkedési mintákat az entitások közötti interakció egyszerűsítésére használják.

Alkotó:

  • Singleton – egyetlen példányra korlátozza az osztály létrehozását, és hozzáférést biztosít ehhez az egyetlen példányhoz.

  • Gyári – akkor használatos, ha több alosztályú szuperosztályunk van, és egy alosztályt kell visszaadnunk a bemenet alapján.

  • Absztrakt gyár — egy szupergyárat használ gyárak létrehozásához, amelyeket aztán objektumok létrehozására használunk.

  • Builder – összetett objektumok egyszerű objektumok felhasználásával történő létrehozására szolgál. Fokozatosan nagy objektumot hoz létre egy kicsi, egyszerű tárgyból.

  • Prototípus – segít javítani a teljesítményt duplikált objektumok létrehozásakor; ahelyett, hogy új objektumot hozna létre, egy meglévő objektum klónját hozza létre és adja vissza.

Szerkezeti:

  • Adapter – átalakító két inkompatibilis objektum között. Az adaptermintával két inkompatibilis interfészt kombinálhatunk.

  • Összetett – egy osztályt használ egy fastruktúra ábrázolására.

  • Proxy – egy másik osztály funkcióit biztosítja.

  • Flyweight – objektumok újrafelhasználása ahelyett, hogy nagyszámú hasonló objektumot hozna létre.

  • Homlokzat – egyszerű felületet biztosít az ügyfél számára, amely az interfészt használja a rendszerrel való interakcióhoz.

  • Bridge – bizonyos osztályokat függetlenít az interfészt megvalósító osztályoktól.

  • Dekorátor – új funkciókat ad egy meglévő objektumhoz anélkül, hogy belekötne annak szerkezetébe.

Viselkedési:

  • Sablonmódszer – alapvető algoritmust határoz meg, és lehetővé teszi a leszármazottak számára, hogy felülírják az algoritmus egyes lépéseit anélkül, hogy megváltoztatnák az általános szerkezetét.

  • Közvetítő – egy közvetítő osztályt biztosít, amely kezeli a különböző osztályok közötti összes kommunikációt.

  • Felelősségi lánc – lehetővé teszi a kérés küldője és címzettje közötti szigorú függőség elkerülését; sőt a kérést több objektum is feldolgozhatja.

  • Megfigyelő – lehetővé teszi, hogy egy objektum megfigyelje a többi objektumban előforduló eseményeket és reagáljon azokra.

  • Stratégia – lehetővé teszi a stratégiák (algoritmusok) futás közbeni megváltoztatását.

  • Parancs – egy interfész, amely deklarál egy metódust egy adott művelet végrehajtásához.

  • Állapot – lehetővé teszi, hogy az objektum állapotától függően megváltoztassa viselkedését.

  • Látogató – a kapcsolódó objektumok csoportjaival végzett műveletek egyszerűsítésére szolgál.

  • Tolmács – nyelvtant határoz meg egy egyszerű nyelvhez a probléma tartományban.

  • Iterátor – szekvenciálisan hozzáfér a gyűjtemény elemeihez anélkül, hogy ismerné annak mögöttes formáját.

  • Memento – egy objektum állapotának tárolására szolgál; ez az állapot később visszaállítható.

A CodeGym tanfolyamon néhány mintával találkozhatsz ezen a listán. A következő feladatokat javaslom a mintákkal kapcsolatban: 1522 , 1530 , 1631 , big01 , 2912 , 3107 ... A tervezési minták okos használata megbízhatóbb kódkarbantartáshoz vezet, mert amellett, hogy a tervezési minták jó megoldást jelentenek a gyakori problémákra , más fejlesztők felismerhetik őket, csökkentve az egyes kódokkal való munkavégzés idejét.
Hozzászólások
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION