Design Patterns Flashcards
Mi a Module Pattern célja és mit csinálunk vele?
A Module Pattern célja az enkapszuláció biztosítása. Elrejtjük vele a privát kódunkat a globális névtér elől, és biztosítunk egy interfészt, amin keresztül a publikus metódusok elérhetőek.
Milyen tervezési minták közé tartozik a Module Pattern?
A Module Pattern a kódunk struktúrájáról szól, ezért a strukturális tervezési minták (structural design patterns) közé tartozik.
Milyen eszközöket javasol a Module Pattern?
A Module Pattern által javasolt eszközök az azonnal meghívott függvénykifejezés (IIFE) a privát kód becsomagolására és a visszaadott object literal, amely a nyilvános interfészt biztosítja.
Mi a Module Pattern hátránya?
A Module Pattern hátránya, hogy nehéz megváltoztatni a kódunk láthatóságát.
Mi a Constructor Pattern célja?
A Constructor Pattern célja, hogy megkönnyítse az objektumok létrehozását.
Milyen tervezési minták közé tartozik a Constructor Pattern?
A Constructor Pattern a létrehozó tervezési minták (creational design pattern) közé tartozik.
Milyen eszközt javasol a Constructor Pattern?
Az eszköz, amelyet a Constructor Pattern javasol az objektumkészítéshez, a konstruktor függvény.
Mi a Constructor Pattern hátránya?
A Constructor Pattern hátulütője az, hogy az öröklődést nehézzé teszi.
Mi a Class Pattern célja?
A Class Pattern célja az objektumkészítés megkönnyítése.
Milyen tervezési minták közé tartozik a Class Pattern?
A Class Pattern a létrehozó tervezési minták közé tartozik (creational design pattern).
Mi a Class Pattern előnye?
A classok könnyebbé teszik az öröklődést, és bevezetnek pár egyéb szintaxisbeli apróságot is, amelyek megkönnyítik az életünket. (ES6 class szintaxis)
Milyen eszközt javasol a Class Pattern?
Az eszköz, amit a Class Pattern javasol az objektumkészítéshez, az ES6 class szintaxis.
Mi a Class Pattern hátránya?
A Class Pattern hátulütője az, hogy még nincs mindenhol támogatva.
Hogyan lehet egy Class-t definiálni?
Ahogy a függvényeknek, a classoknak is van egy class deklaráció (class declaration) és egy class kifejezés (class expression) verziójuk. Mindkettő a class kulcsszóval kezdődik, amit a class törzse (class body) követ kapcsos zárójelekkel körbevéve. A class deklaráció egy önmagában álló kódblokk, a class kifejezést pedig használhatjuk egy változó értékeként.
A class deklarációk nem hoistolódnak.
Milyen fontosabb részekből épül fel a Class törzse? (Class Body) /3pont
1, A konstruktor (constructor) – egy speciális metódus, amely inicializálja a létrehozott objektumainkat.
2, A példánytulajdonságok (instance properties) – a tulajdonságok, amelyeket a konstruktorban függesztünk a this-re, és ezen keresztül a létrehozandó objektumpéldányra.
3, A prototípus-metódusok – a függvények, amelyeken minden objektumpéldány osztozik majd, és amelyekkel manipulálhatják a saját tulajdonságaikat.