dc.contributor.advisor | Hubička, Jan | |
dc.creator | Lukeš, Stanislav | |
dc.date.accessioned | 2020-10-05T10:02:07Z | |
dc.date.available | 2020-10-05T10:02:07Z | |
dc.date.issued | 2020 | |
dc.identifier.uri | http://hdl.handle.net/20.500.11956/120973 | |
dc.description.abstract | V práci představujeme knihovnu pro implementaci robustních generátorů kódu v jazyce C#. Stávající generátory kódu často pro nějaké vstupy produkují nepřeložitelný kód. Dochází ke jmeným kolizím a dalším problémům, což zhoršuje stabilitu generování kódu. Tyto případy pak rozbíjí zavedené procesy sestavování aplikací a programátoři je musí řešit ručně. Naše knihovna tyto problémy řeší. Automaticky se vyhýbá jmeným kolizím a dalším nejednoznačnostem, zatímco produkuje čitelný kód. Náš přístup porovnáme s jinými řešeními, mimo jiné s metaprogramováním založeném na reflexi, makrech a automatickým přepisováním mezijazyka. 1 | cs_CZ |
dc.description.abstract | This work presents a library for implementing robust generators of C# code. Exist- ing code generators often generate invalid code for some inputs. Issues such as name collisions reduce the reliability of code generation. Programmers are then forced to han- dle these cases manually, which breaks build pipelines and lowers productivity. Our library solves these issues. It automatically avoids name collisions, and keeps the gener- ated code clean and human-readable. We compare our approach to other solutions such as reflection-based metaprogramming, macros, intermediate language rewriting and F# Type Providers. 1 | en_US |
dc.language | English | cs_CZ |
dc.language.iso | en_US | |
dc.publisher | Univerzita Karlova, Matematicko-fyzikální fakulta | cs_CZ |
dc.subject | generování kódu | cs_CZ |
dc.subject | C# | cs_CZ |
dc.subject | ILSpy | cs_CZ |
dc.subject | Coberec | cs_CZ |
dc.subject | code generation | en_US |
dc.subject | C# | en_US |
dc.subject | ILSpy | en_US |
dc.subject | Coberec | en_US |
dc.title | API for C# code generation | en_US |
dc.type | bakalářská práce | cs_CZ |
dcterms.created | 2020 | |
dcterms.dateAccepted | 2020-09-14 | |
dc.description.department | Katedra aplikované matematiky | cs_CZ |
dc.description.department | Department of Applied Mathematics | en_US |
dc.description.faculty | Faculty of Mathematics and Physics | en_US |
dc.description.faculty | Matematicko-fyzikální fakulta | cs_CZ |
dc.identifier.repId | 223158 | |
dc.title.translated | Rozhraní pro generování C# kódu | cs_CZ |
dc.contributor.referee | Kliber, Filip | |
thesis.degree.name | Bc. | |
thesis.degree.level | bakalářské | cs_CZ |
thesis.degree.discipline | Programming and Software Systems | en_US |
thesis.degree.discipline | Programování a softwarové systémy | cs_CZ |
thesis.degree.program | Computer Science | en_US |
thesis.degree.program | Informatika | cs_CZ |
uk.thesis.type | bakalářská práce | cs_CZ |
uk.taxonomy.organization-cs | Matematicko-fyzikální fakulta::Katedra aplikované matematiky | cs_CZ |
uk.taxonomy.organization-en | Faculty of Mathematics and Physics::Department of Applied Mathematics | en_US |
uk.faculty-name.cs | Matematicko-fyzikální fakulta | cs_CZ |
uk.faculty-name.en | Faculty of Mathematics and Physics | en_US |
uk.faculty-abbr.cs | MFF | cs_CZ |
uk.degree-discipline.cs | Programování a softwarové systémy | cs_CZ |
uk.degree-discipline.en | Programming and Software Systems | en_US |
uk.degree-program.cs | Informatika | cs_CZ |
uk.degree-program.en | Computer Science | en_US |
thesis.grade.cs | Výborně | cs_CZ |
thesis.grade.en | Excellent | en_US |
uk.abstract.cs | V práci představujeme knihovnu pro implementaci robustních generátorů kódu v jazyce C#. Stávající generátory kódu často pro nějaké vstupy produkují nepřeložitelný kód. Dochází ke jmeným kolizím a dalším problémům, což zhoršuje stabilitu generování kódu. Tyto případy pak rozbíjí zavedené procesy sestavování aplikací a programátoři je musí řešit ručně. Naše knihovna tyto problémy řeší. Automaticky se vyhýbá jmeným kolizím a dalším nejednoznačnostem, zatímco produkuje čitelný kód. Náš přístup porovnáme s jinými řešeními, mimo jiné s metaprogramováním založeném na reflexi, makrech a automatickým přepisováním mezijazyka. 1 | cs_CZ |
uk.abstract.en | This work presents a library for implementing robust generators of C# code. Exist- ing code generators often generate invalid code for some inputs. Issues such as name collisions reduce the reliability of code generation. Programmers are then forced to han- dle these cases manually, which breaks build pipelines and lowers productivity. Our library solves these issues. It automatically avoids name collisions, and keeps the gener- ated code clean and human-readable. We compare our approach to other solutions such as reflection-based metaprogramming, macros, intermediate language rewriting and F# Type Providers. 1 | en_US |
uk.file-availability | V | |
uk.grantor | Univerzita Karlova, Matematicko-fyzikální fakulta, Katedra aplikované matematiky | cs_CZ |
thesis.grade.code | 1 | |
uk.publication-place | Praha | cs_CZ |