Témata prací (Výběr práce)Témata prací (Výběr práce)(verze: 341)
Detail práce
   Přihlásit přes CAS
Metajazyk generující zdrojové kódy
Název práce v jazyce práce (slovenština): Metajazyk generující zdrojové kódy
Název práce v češtině: Metajazyk generující zdrojové kódy
Název v anglickém jazyce: Source Codes Generating Metalanguage
Klíčová slova: Návrh programovacieho jazyka, implementácia prekladača, návrhové vzory, šablóny
Klíčová slova anglicky: Programming language design, Implementation of a compiler, design pattern, templates
Akademický rok vypsání: 2019/2020
Typ práce: bakalářská práce
Jazyk práce: slovenština
Ústav: Katedra softwaru a výuky informatiky (32-KSVI)
Vedoucí / školitel: RNDr. Martin Pergel, Ph.D.
Řešitel: skrytý - zadáno a potvrzeno stud. odd.
Datum přihlášení: 30.07.2020
Datum zadání: 30.07.2020
Datum potvrzení stud. oddělením: 31.07.2020
Datum a čas obhajoby: 14.09.2020 09:00
Datum odevzdání elektronické podoby:30.07.2020
Datum odevzdání tištěné podoby:31.07.2020
Datum proběhlé obhajoby: 14.09.2020
Oponenti: Mgr. Jakub Gemrot, Ph.D.
 
 
 
Zásady pro vypracování
Cílem práce je návrh a implementace překladače, který na základě pravidel navrženého metajazyka vygeneruje zdrojové kódy pro Javu a C#. Síla tohoto metajazyka bude (kromě základní funkcionality obvyklé v běžných programovacích jazycích) spočívat v generování návrhových vzorů (například Builder či Prototype) a šablon (API pro komunikaci po Internetu pro klienty a servery, rozšířený základ WinForms aplikací,...). Tento nástroj má za cíl usnadnit práci programátora, případně může posloužit pro výukové účely na kurzech návrhových vzorů a šablon.
Seznam odborné literatury
E. Gamma, R. Helm, R. Johnson, J. Vlissides: Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1994
A. Troelsen: C# 6.0 and the .NET 4.6 Framework, Apress, 2015
R. Pecinovský: Java 9, Kompletní příručka jazyka, 2017
A. V. Aho, M. S. Lam, R. Sethi, J. D. Ullman: Compilers: Principles, Techniques and Tools (2nd Edition), Addison Wesley, 2006
D. Watson: A Practical Approach to Compiler Construction (Undergraduate Topics in Computer Science), Springer, 2017
Předběžná náplň práce
Novodobé programovanie ide ruka v ruke s objektovo-orientovanými programovacími jazykmi. Tieto jazyky nám toho ponúkajú veľa, či už sa jedná o zabudované prvky jazyka, alebo štandardizované knižnice pre daný programovací jazyk. Šikovný programátor vie vlastnosti daného programovacieho jazyka využiť na maximum. Medzi znalosti takého programátora patria aj návrhové vzory, dnes už neodmysliteľná časť programovania. V praxi, táto znalosť pomáha pri tvorbe prehľadného, jednoduchého a rozšíriteľného zdrojového kódu. Tieto vlastnosti sú
kľúčové pri tvorbe kvalitného softwaru. Cieľom tejto práce je čitateľovi priblížiť tieto vzory a ukázať mu, ako by mali byť implementované. Okrem iného, obsahuje aj zopár šablón, ktoré je dobré poznať
Předběžná náplň práce v anglickém jazyce
Modern programming goes hand-in-hand with object-oriented programming languages. These languages offer a lot of features, either built-in elements or standard libraries. Skillful programmer is able to maximize the effectivity of these features. One of the skills of such programmer is considered to be knowledge of the design patterns. In practice, they help with producing simple, clean and extendible source code. Such code leads to development of top-notch software. Goal of this thesis is to show some of the design patterns and, more importantly,
show how they are supposed to be implemented. Among other things, I will also mention few templates that I personally consider useful to know.
 
Univerzita Karlova | Informační systém UK