Metaprogramovanie - koronaprednáška 7
Preber si túto prednášku so svojou AI
Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.
Zhrnutie prednášky
Prednáška nadväzuje na tému generovania kódu a ukazuje opačný postup: načítanie zdrojového kódu vo vlastnom jazyku do pamäte, jeho interpretáciu, využitie na konfiguráciu aplikácií alebo na generovanie kódu. Vysvetľuje rozdiel medzi univerzálnymi jazykmi (GPL) a doménovo-špecifickými jazykmi (DSL), ktoré riešia jednu konkrétnu doménu, napríklad SQL. DSL sa hodí tam, kde je riešenie v GPL príliš komplikované, a môže byť čitateľný alebo zapisovateľný aj zákazníkom (business readable DSL). Ako príklady slúžia jazyk na popis železničnej technológie, konfiguračný jazyk nástroja UMLet a Cucumber na čitateľné unit testy v angličtine. Na záver sa rozlišuje externý DSL, ktorý je celkom nový jazyk, a interný DSL, ktorý je súčasťou existujúceho GPL jazyka.
- - GPL je univerzálny jazyk použiteľný na čokoľvek, DSL je určený na jednu konkrétnu doménu.
- - Príklady DSL: SQL, konfiguračné jazyky, jazyky na popis kontajnerov v Dockeri.
- - Business readable DSL môže čítať a upravovať aj zákazník bez znalosti programovania.
- - Vlastný DSL umožňuje definovať pravidlá, napríklad vylúčiť behové chyby v jazyku.
- - Cucumber je DSL na business readable unit testy zapísané v prirodzenej angličtine.
- - Testy čitateľné zákazníkom slúžia ako odsúhlasený rozsah zákazky.
- - Externý DSL je samostatný nový jazyk, interný DSL je zabudovaný do existujúceho GPL jazyka.
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky