Thesis (Selection of subject)Thesis (Selection of subject)(version: 384)
Thesis details
   Login via CAS
Metajazyk generující zdrojové kódy
Thesis title in thesis language (Slovak): Metajazyk generující zdrojové kódy
Thesis title in Czech: Metajazyk generující zdrojové kódy
Thesis title in English: Source Codes Generating Metalanguage
Key words: Návrh programovacieho jazyka, implementácia prekladača, návrhové vzory, šablóny
English key words: Programming language design, Implementation of a compiler, design pattern, templates
Academic year of topic announcement: 2019/2020
Thesis type: Bachelor's thesis
Thesis language: slovenština
Department: Department of Software and Computer Science Education (32-KSVI)
Supervisor: RNDr. Martin Pergel, Ph.D.
Author: hidden - assigned and confirmed by the Study Dept.
Date of registration: 30.07.2020
Date of assignment: 30.07.2020
Confirmed by Study dept. on: 31.07.2020
Date and time of defence: 14.09.2020 09:00
Date of electronic submission:30.07.2020
Date of submission of printed version:31.07.2020
Date of proceeded defence: 14.09.2020
Opponents: Mgr. Jakub Gemrot, Ph.D.
 
 
 
Guidelines
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.
References
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
Preliminary scope of work
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ť
Preliminary scope of work in English
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.
 
Charles University | Information system of Charles University | http://www.cuni.cz/UKEN-329.html