Metaprogramovanie - koronaprednáška 7

Zdroj
ručne priradené
Pridané

Pozrieť na YouTube →

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.

Otvoriť AI: ChatGPT · Claude · Gemini

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.