Předmět: Paradigmata programování 2

« Zpět
Název předmětu Paradigmata programování 2
Kód předmětu KMI/PAPR2
Organizační forma výuky Přednáška + Cvičení
Úroveň předmětu Bakalářský
Rok studia nespecifikován
Semestr Letní
Počet ECTS kreditů 5
Vyučovací jazyk Čeština
Statut předmětu nespecifikováno
Způsob výuky Kontaktní
Studijní praxe Nejedná se o pracovní stáž
Doporučené volitelné součásti programu Není
Vyučující
  • Krupka Michal, doc. RNDr. Ph.D.
  • Urbanec Štěpán, Ing. CSc.
  • Janoštík Radek, Mgr. Ph.D.
  • Urbanec Tomáš, Mgr.
  • Kočíř David, Mgr.
Obsah předmětu
Jedná se o druhou část čtyřdílného kurzu věnovaného základním programovacím paradigmatům, stylům a technikám. Obecným cílem kurzu je seznámit studenty s principy programování bez úzké vazby na konkrétní programovací jazyk. Jako modelovací jazyk je většinu kurzu použit jazyk Common Lisp. Druhá část kurzu se soustředí na pokročilejší techniky zejména funkcionálního programování. 1. Makra jakožto modelovací nástroj v programovacím jazyce. 2. Imperativní rysy programování. Mutace proměnných a hodnot v datových strukturách. 3. Dynamické proměnné, vazby, dynamická prostředí. Rozsah a životnost vazby. 4. REPL 5. Aplikace funkcionálního programování. Funkcionální grafika. 6. Explicitní líné vyhodnocování, přísliby a proudy. 7. Generátory. 8. Normální vyhodnocovací model, základy lambda-kalkulu 8.

Studijní aktivity a metody výuky
Přednášení, Demonstrace
Výstupy z učení
Studenti se seznámí s pokročilými pojmy z paradigmat programování.
1. Znalost Rozpoznej výhody a nevýhody používání pokročilých programovacích konstruktů jakými jsou makra a kontinuace.
Předpoklady
KMI/PAPR1 Paradigmata programování 1
KMI/PAPR1

Hodnoticí metody a kritéria
Ústní zkouška, Písemná zkouška

Aktivní účast v hodině. Plnění zadaných úkolů. Složení ústní (příp. písemné) zkoušky.
Doporučená literatura
  • Bird R., Wadler P. (1988). Introduction to Functional Programming. Prentice Hall, Englewood Cliffs, New Jersey.
  • Dybvig, R. K. (1996). The Scheme Programming Language. Prentice Hall, A Simon and Schuster Company, Upper Saddle River, NJ.
  • Felleisen M., Findler R. B., Flatt M., Krishnamurthi S. (2001). How To Design Programs: An Introduction to Computing and Programming. The MIT Press, Cambridge, Massachusetts.
  • H. Abelson, G. J. Sussman. (1996). Structure and Implemantation of Computer Programs. Cambridge, Massachusetts.
  • Konečný, Vychodil. Paradigmata programování 1, díl A..
  • Konečný, Vychodil. Paradigmata programování 1, díl B..
  • Manis V. S., Little J. J. (1995). The Schematics of Computation. Prentice Hall, Englewood Cliffs, New Jersey.
  • Springer G., Friedman D.P. (1994). Scheme and the Art of Programming. The MIT Press, Cambridge, Massachusetts.
  • Yinong Chen. (2016). Introduction to Programming Languages: Programming in C, C++ Scheme, Prolog, C# and SOA. Kendall Hunt Pub Co.


Studijní plány, ve kterých se předmět nachází
Fakulta Studijní plán (Verze) Kategorie studijního oboru/specializace Doporučený ročník Doporučený semestr