Detail předmětu
Principy programovacích jazyků a OOP
FIT-IPPAk. rok: 2022/2023
Předmět nabízí základní klasifikaci programovacích jazyků s podrobnějším představením imperativních a deklarativních jazyků. V rámci imperativních jazyků budou představeny nestrukturované jazyky, blokově a modulárně strukturované jazyky i objektové paradigma. Z programovacích technik návrhové vzory. Úvod do funkcionálních a logických jazyků bude přednesen v rámci deklarativních jazyků. Budou též zmíněny teorie ležící v základu těchto paradigmat. Studenti budou také obeznámeni se způsoby zpracování jednotlivých typů programovacích jazyků.
Jazyk výuky
Počet kreditů
Garant předmětu
Zajišťuje ústav
Výsledky učení předmětu
Prerekvizity
Způsob a kritéria hodnocení
- Půlsemestrální zkouška, u které neexistuje náhradní, či opravný termín - 20 bodů.
- Řešení 1 projektu v průběhu semestru a jeho odevzdání ve stanovených termínech - 20 bodů.
Učební cíle
Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky
- Půlsemestrální zkouška - písemně, formou testu, kde odpovědi jsou tvořeny celými větami, neexistuje náhradní/opravný termín. (20 bodů)
- Vypracování projektů - 1 projekt (implementace jednoho či více programů, dle zadání) s příslušnou dokumentací. (20 bodů)
- Závěrečná zkouška - písemně, formou testu, kde odpovědi jsou tvořeny celými větami, 2 opravné termíny. (60 bodů - pro získání bodů ze zkoušky je nutné zkoušku vypracovat tak, aby byla hodnocena nejméně 25 body, v opačném případě bude zkouška hodnocena 0 body.)
Prerekvizity a korekvizity
- povinná prerekvizita
Algoritmy - doporučená prerekvizita
Formální jazyky a překladače
Doporučená literatura
Kolář, D.: Principy programovacích jazyků a objektově orientovaného programování - III, studijní opora pro kombinované studium, modul IPP III, VUT FIT, 2006
Křivka, Z., Kolář, D.: Principy programovacích jazyků a objektově orientovaného programování - II, studijní opora pro kombinované studium, modul IPP II, VUT FIT, 2008
Lecture notes in PDF file (EN)
Lee, D.K.: Foundations of Programming Languages, Second Edition, Springer, 2017
MacLennan, B.J.: Principles of Programming Languages: Design, Evaluation, and Implementation (3rd Edition). Oxford University Press, 1999
Sebesta R.W.: Concepts of Programming Languages, 4th edition, ADDISON-WESLEY, 1999, ISBN 0-201-38596-1
Texty přednášek v elektronické podobě (CS)
Elearning
Zařazení předmětu ve studijních plánech
Typ (způsob) výuky
Přednáška
Vyučující / Lektor
Osnova
- Úvodní vymezení pojmů a problematiky
- Úvod do imperativních jazyků - nestrukturované programovací jazyky
- Blokově strukturované jazyky
- Modulární jazyky
- Objektově orientované jazyky
- Některé zvláštnosti objektově orientovaných jazyků
- Návrhové vzory
- Úvod do deklarativních jazyků - lambda kalkul
- Funkcionální jazyky
- Logické programovací jazyky
- Další typy deklarativních jazyků, srovnání
- Hlavní rozdíly v práci a implementaci u imperativních a deklarativních jazyků
- Shrnutí tématu, diskuze navazujících předmětů
Projekt
Vyučující / Lektor
Osnova
Elearning