Lekce 28 - Reflexe a proxy v JavaScriptu
V předešlém cvičení, Řešené úlohy k 26.-27. lekci OOP v JavaScriptu, jsme si procvičili nabyté zkušenosti z předchozích lekcí.
V dnešním tutoriálu OOP v JavaScriptu se budeme bavit o reflexi, pro kterou verze JavaScriptu ECMA6 zavádí nový unifikovaný přístup. Jde o pokročilé techniky, které se sice používají jen zřídka, je ale dobré mít o nich přehled, pokud na ně narazíme v cizím kódu.
Reflexe
Reflexe (anglicky reflection) by se dala vysvětlit jako zkoumání vnitřní struktury programu a její modifikace. Můžeme se pomocí ní ptát, jakého je objekt typu, přidávat mu za běhu skriptu nové vlastnosti, změnit mu prototyp a podobně.
Představme si, že máme speciální brýle. Ty nám umožňují vidět vnitřní strukturu a mechanismus našeho auta (tedy javascriptového objektu), ale také nám umožňují přidávat nové funkce, jako je lepší audiosystém nebo efektivnější motor. To vše, aniž bychom museli auto rozebírat nebo se obracet na mechanika.
U staticky typovaných jazyků tak vypadá reflexe jako superschopnost. U
dynamického JavaScriptu jsme podobné věci již dělali, aniž bychom vlastně
tušili, že nějakou reflexi používáme. Například při využívání
operátoru typeof
, instanceof
nebo třeba voláním
Object.keys()
. Vlastnosti jsme již existujícím objektům také
přidávali. Tyto metody existují v JavaScriptu již dlouho, proč tedy
zavádět něco jiného?
...konec náhledu článku...
Pokračuj dál
Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.
Koupit tento kurz
Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.
- Neomezený a trvalý přístup k jednotlivým lekcím.
- Kvalitní znalosti v oblasti IT.
- Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.
Popis článku
Požadovaný článek má následující obsah:
V JavaScript OOP tutoriálu se seznámíme s dalšími konstrukcemi objektově orientovaného programování standardu ECMA6 - Reflect a Proxy.
Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.