Logo ČVUT
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE
STUDIJNÍ PLÁNY
2022/2023

Aplikované funkcionální programování

Přihlášení do KOSu pro zápis předmětu Zobrazit rozvrh
Kód Zakončení Kredity Rozsah Jazyk výuky
NI-AFP KZ 5 2P+1C česky
Přednášející:
Robert Pergl (gar.), Jan Slifka, Marek Suchánek
Cvičící:
Robert Pergl (gar.), Daniel Němec, Jan Slifka, Marek Suchánek
Předmět zajišťuje:
katedra softwarového inženýrství
Anotace:

Funkcionální programování představuje jedno z tradičních programovacích paradigmat. Jelikož v současné době jsou na vzestupu tradiční i nové funkcionální jazyky a funkcionální paradigma se stává i důležitým prvkem tradičně imperativních jazyků (C++, C#, Java), je nutnou kompetencí softwarového inženýra toto paradigma ovládat jak po stránce teoretické, tak především praktické.

Požadavky:

BI-PPA je vhodnou, nikoliv nutnou prerekvizitou.

Osnova přednášek:

1. Úvod do předmětu, funkcionálního programování a nástrojů.

2. Funkce a datové typy

3. Strukturování kódu, vyhodnocování a textové typy

4. Kontejnery (datové typy), pokročilé funkce a operátory

5. Typové třídy

6. IO, vyjímky a další typové třídy

7. Testování, dokumentace, výkon

8. Webové aplikace v Haskell

9. Úvod do jazyka Elm

10. The Elm Architecture

11. Webové aplikace v Elm

12. Příklady z praxe, diskuse a konzultace

Osnova cvičení:

1. Úvod do předmětu, funkcionálního programování a nástrojů.

2. Funkce a datové typy

3. Strukturování kódu, vyhodnocování a textové typy

4. Kontejnery (datové typy), pokročilé funkce a operátory

5. Typové třídy

6. IO, vyjímky a další typové třídy

7. Testování, dokumentace, výkon

8. Webové aplikace v Haskell

9. Úvod do jazyka Elm

10. The Elm Architecture

11. Webové aplikace v Elm

12. Příklady z praxe, diskuse a konzultace

Cíle studia:

Koncepty budou demonstrovány na čistém funkcionálním jazyku Haskell, nicméně studenti by měli být schopni aplikovat nabyté poznatky i v ostatních jazycích; bude též poskytnut přehled současné nabídky funkcionálních jazyků a jejich základních vlastností. V druhé půlce semestru se studenti seznámí rovněž s jazykem Elm.

Studijní materiály:

Učebnice:

The Haskelll Book

Learn you a Haskell for Great Good

Články:

Why functional programming matters

How functional programming mattered

Další materiály:

https://wiki.ccmi.fit.cvut.cz/doku.php?id=programming:haskell

Poznámka:

Tento předmět obsahově navazuje na bakalářský předmět Programovací paradigmata

Informace o předmětu a výukové materiály naleznete na https://courses.fit.cvut.cz/MI-AFP/

Další informace:
https://courses.fit.cvut.cz/MI-AFP/
Rozvrh na zimní semestr 2022/2023:
Rozvrh není připraven
Rozvrh na letní semestr 2022/2023:
Rozvrh není připraven
Předmět je součástí následujících studijních plánů:
Platnost dat k 28. 11. 2022
Aktualizace výše uvedených informací naleznete na adrese https://bilakniha.cvut.cz/cs/predmet6157506.html