Název:
Vizualizace změny kódu
Překlad názvu:
Code changes visualisation
Autoři:
Martinek, Petr ; Majerech, Vladan (vedoucí práce) ; Kliber, Filip (oponent) Typ dokumentu: Bakalářské práce
Rok:
2022
Jazyk:
cze
Abstrakt: [cze][eng] Cílem této práce je navrhnout a implementovat program, který na základně dvou po- dobných verzí zdrojového kódu napsaného v JavaScriptu vygeneruje animaci ve formátu GIF, zobrazující postupný přepis první verze do druhé. Dále je cílem navrhnout tento program tak, aby byl rozšířitelný o další jazyky. K dosažení tohoto cíle je definována zjednodušená reprezentace zdrojového kódu, která je nezávislá na jazyce, a pro každou uvažovanou úpravu v rámci této reprezentace je defi- novaná cenová funkce. Na základě této cenové funkce je vyhledána nejlevnější posloupnost přepisů, podle které je konečná animace vygenerována. 1The goal of this thesis is to design and implement a program, which, given two similar versions of source code written in JavaScript, generates a GIF animation showing a step- by-step process of rewriting the first version into the other. Another goal is to design the program in a way, so that the list of supported languages can be extended. To achieve this goal, a simple, language-independent representation of source code is defined and for every considered transformation within this simplified representation, a cost function is defined. Based on this cost function, the cheapest sequence of transfor- mations is found, which is then used to generate the final animation. 1
Klíčová slova:
gramatiky|programovací jazyky|stromová struktura; grammars|programming languages|tree structure