Zpět na všechny kurzy

Programovací paradigmata

Detaily

Lektor: prof. RNDr. Josef Hynek, Ph.D., MBA
Fakulta: Fakulta informatiky a managementu
Start výuky: 2.10.2026
Časová dotace: 16 vyučovacích hodin
Přihlášky do: 15. 9. 2026 23:55
Počet míst: 7
Cena kurzu: 3 600 Kč
Jazyk: Čeština

Kontakt

Referent: Bc. Marija Alexejevna Nikiforova
E-mail: maryia.nikifarava@uhk.cz
Telefon: 493332266
Přihlásit se

Máte zájem o tento kurz?

Neváhejte a podejte přihlášku

Popis

Pokud jste aktivním studentem nebo zaměstnancem UHK, máte nárok na zlevněné kurzovné. Pro uplatnění slevy prosím vyplňte formulář zde.

Cílem předmětu je poskytnout ucelený přehled hlavních programovacích paradigmat a jelikož objektově orientované programování je detailně probíráno v jiných předmětech CŽV (PRO1 Programování I), je hlavní důraz kladen na zvládnutí základů funkcionálního a logického programovacího paradigmatu.

Jedná se o program zakončený mikrocertifikátem.

Obsah:
1. Historie programovacích jazyků, programovací paradigmata – imperativní, objektově orientované, funkcionální a logické paradigma
2. Úvod do funkcionálního programování, lambda kalkul
3. Výrazy a příkazy, funkce, funkcionální program
4. Rekurze a iterace, mapovací funkcionály, řídící struktury
5. Seznamy a práce s nimi, nekonečné seznamy, currying
6. Řešení úloh s využitím funkcionálního programování
7. Implementace funkcionálních jazyků a jejich porovnání
8. Deklarativní programovací jazyky, predikátová logika, úvod do logického programování
9. Predikáty, klauzule, fakta, operátory
10. Seznamy, predikáty pro vstup a výstup
11. Predikáty pro řízení výpočtu
12. Práce s databází, řešení praktických úloh
13. Aplikace v umělé inteligenci

 

Výsledky učení (profil absolventa)
Odborné znalosti – po absolvování předmětu prokazuje student znalosti:
• Znalost pojmů algoritmus, algoritmická složitost, proměnná, výraz, pole.
• Znalost zápisu algoritmické konstrukce pro deklaraci proměnné, podmíněný příkaz, cyklus.
• Znalost rozdílů mezi hlavními programovacími paradigmaty.
• Znalost výhod a nevýhod jednotlivých programovacích paradigmat.
• Znalost důvodů, které vedou k výhodné kombinaci těchto paradigmat při psaní konkrétních aplikací či v moderních programovacích jazycích.

Odborné dovednosti – po absolvování předmětu prokazuje student dovednosti:
• Rozložit problém na podproblémy.
• Identifikovat algoritmická primitiva pro řešení známých problémů.
• Složit algoritmus z algoritmických primitiv.
• Je schopen posoudit možnost využití funkcionálního a deklarativního programovacího jazyka.
• Ovládá základy funkcionálního a logického programování.
• Je schopen samostatně naprogramovat a ladit jednoduché aplikace (práce se seznamy, algebraické úlohy, základní úlohy na grafech, reprezentace znalostí, prohledávání stavového prostoru, aplikace v umělé inteligenci).

Obecné způsobilosti – po absolvování předmětu je student schopen:
• Posoudit vhodnost použití funkcionálního a/nebo deklarativního programovacího jazyka a samostatně navrhovat a odlaďovat jednoduché rekurzivní algoritmy.

 

Předpoklady potřebné k zápisu do programu CŽV

Pro úspěšné zvládnutí předmětu je vhodné předchozí absolvování předmětu PRO1 Programování I.

Odborné znalosti – pro úspěšné zvládnutí předmětu se předpokládá, že je student před zahájením výuky schopen:
• Zvládat základy programování v imperativním programovacím jazyku.
• Disponovat znalostmi středoškolské matematiky.
• Vysvětlit základní matematické pojmy a vztahy mezi nimi.

Odborné dovednosti – pro úspěšné zvládnutí předmětu se předpokládá, že student před zahájením výuky dokáže:
• Zapsat a odladit jednoduchý algoritmus v imperativním programovacím jazyce.
• Chápat základy výrokové logiky.
• Využívat poznatky o výrokové logice ke skládání podmínek.
• Aplikovat teoretický matematický aparát při řešení praktických úloh.


Obecné způsobilosti – před zahájením studia předmětu je student schopen:
• Samostatně a odpovědně se na základě rámcového zadání rozhodovat v souvislostech jen částečně známých.
• Používat své odborné znalosti, odborné dovednosti a obecné způsobilosti alespoň v jednom cizím jazyce.
• Rozpoznat matematický problém, objasnit jeho podstatu, rozčlenit ho na části.
• Své učení a pracovní činnost si samostatně plánovat a organizovat.
• Kriticky přistupovat ke zdrojům informací, informace tvořivě zpracovávat a využívat při svém studiu a praxi.

 

Forma způsobu ověření výsledků učení a další požadavky na studenta

Požadavky k zápočtu: Aktivní účast na cvičeních, dosažení min. 60 % z celkového počtu možných bodů ze dvou zápočtových testů.
Požadavky ke zkoušce: Získání alespoň 50 % bodů ze zkouškového testu. Ústní část zkoušky je rozpravou nad písemnou prací studenta.

 

Studijní literatura a studijní pomůcky
Základní:
Whitington, J. Haskell from the very beginning. Cambridge, 2019. ISBN 13-9-78095767113.
Hynek, J. Logické programování a Prolog. 2. přeprac. vyd. Hradec Králové, 2003. ISBN 80-7041-090-6.
Levesque, H. Thinking as Computation. Cambridge, MA, 2012. ISBN 978-0-262-01699-5.

Doporučená:
Milková, E. a kol. Algoritmy – základní konstrukce v příkladech a jejich vizualizace. Hradec Králové, 2010. ISBN 978-80-7435-064-1.
Šebesta, R. W. Concepts of Programming Languages. Addison-Wesley, 2016. ISBN 978-0-13-139531-2.
Thompson, S. Haskell: The Craft of Functional Programming (3rd ed.). Addison Wesley, 2011.
Lipovača, M. Learn You a Haskell for Great Good!. No Starch Press. 2011.
Scott, M.L. Programming Language Pragmatics. Morgan Kaufmann. 2015.
Bratko, Ivan. Prolog programming for artificial intelligence. 3rd ed. Harlow, 2001. ISBN 0-201-40375-7.

 

Místo výuky: Univerzita Hradec Králové, Fakulta informatiky a managementu - budova J.

Termíny výuky: 2.10.2026 v čase 8:15 - 13:10 v učebně J6

                             4.12.2026 v čase 14:55 - 18:10 v učebně J12 

                             11.12.2026 v čase 8:15 - 13:10 v učebně J3

 

Další informace:

Přihlášení probíhá elektronickou formou, je závazné a kurzovné nevratné. Před zahájením kurzu obdrží přihlášení organizační pokyny e-mailem. Vzdělavatel si vyhrazuje právo kurz neotevřít z důvodu dlouhodobé nemoci lektora, dále pak v případě nedostatečného počtu přihlášených osob, či z jiných závažných organizačních důvodů. O neotevření kurzu budou přihlášení v předstihu informováni e-mailem. V případě zrušení kurzu ze strany vzdělavatele se kurzovné přihlášeným vrací v plné výši.

Zpět na všechny kurzy