456-0026/01 – Úvod do programovacích jazyků (UDPJ)
Garantující katedra | Katedra informatiky | Kredity | 4 |
Garant předmětu | doc. Ing. Miroslav Beneš, Ph.D. | Garant verze předmětu | doc. Ing. Miroslav Beneš, Ph.D. |
Úroveň studia | pregraduální nebo graduální | Povinnost | povinně volitelný |
Ročník | | Semestr | letní |
| | Jazyk výuky | čeština |
Rok zavedení | 1992/1993 | Rok zrušení | 2002/2003 |
Určeno pro fakulty | FEI | Určeno pro typy studia | magisterské |
Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi
Studenti získají po absolvování předmětu teoretické základy i praktické dovednosti pro práci s deklarativními programovacími jazyky a dokážou navrhovat a formálně dokazovat rekurzivní algoritmy.
Vyučovací metody
Anotace
Předmět se zabývá základními pojmy programovacích jazyků
a příklady konkrétních programovacích jazyků, zvláště
funkcionálních.
Povinná literatura:
Doporučená literatura:
J.Young: Programovací jazyky pro RT-aplikace. SNTL Praha, 1986.
Forma způsobu ověření studijních výsledků a další požadavky na studenta
Podmínky udělení zápočtu:
Pro získání zápočtu je třeba dosáhnout alespoň 26 bodů za projekty a půlsemestrální písemnou práci.
E-learning
Další požadavky na studenta
Prerekvizity
Předmět nemá žádné prerekvizity.
Korekvizity
Předmět nemá žádné korekvizity.
Osnova předmětu
Přednášky:
Význam programovacích jazyků. Klasifikace programovacích jazyků, funkcionální programovací jazyky, základní principy.
Lambda kalkul, syntaxe, sémantika, funkcionální reprezentace datových typů
Hodnoty, funkce, funkce vyššího řádu, seznamy, rekurze.
Techniky funkcionálního programování - abstraktní datové typy, algoritmy.
Aplikace funkcionálních jazyků - denotační sémantika, algebraické struktury, analýza textu, relační algebra
Vývoj programovacích jazyků.
Požadavky na programovací jazyk, syntax, sémantika. Překladače a interprety.
Základní pojmy - abstrakce dat, řídicí abstrakce, vazba, proměnná, viditelnost, rozsah platnosti.
Vestavěné typy, agregované typy, uživatelem definované typy, konverze, typová kontrola, přetěžování, abstraktní datové typy.
Sekvence, výběr, opakování, uživatelem definované řídicí struktury, zpracování výjimek, konstrukce pro souběžné zpracování, synchronizační prostředky.
Struktura programu, procedury, funkce, bloky, aktivační záznamy, předávání parametrů, koprogramy.
Moduly, závislosti mezi moduly, třídy, dědičnost, pozdní vazba, distribuované zpracování, systémové nástroje pro vývoj programů.
Podmínky absolvování předmětu
Výskyt ve studijních plánech
Výskyt ve speciálních blocích
Hodnocení Výuky
Předmět neobsahuje žádné hodnocení.