Detail předmětu

Programování v Pythonu

FSI-VP0Ak. rok: 2026/2027

Tento předmět seznamuje studenty se základy moderního programování v jazyce Python a s postupy tvorby kvalitního, přehledného a udržovatelného kódu. Studenti se naučí pracovat s vývojovým prostředím, verzováním a základními nástroji pro analýzu kódu. Předmět pokrývá klíčové prvky jazyka, jako jsou datové struktury, funkce, výjimky, generátory, iterátory a principy objektově orientovaného programování. Součástí jsou také základy grafického uživatelského rozhraní, testování, ladění programů, paralelního zpracování a optimalizace výkonu aplikací. Kurz završuje praktické využití Pythonu pro komunikaci přes REST API a gRPC a shrnutí získaných znalostí. Cílem je připravit studenty na samostatnou tvorbu robustních a efektivních aplikací v Pythonu.

Jazyk výuky

čeština

Počet kreditů

4

Vstupní znalosti

Základy programování na úrovni kurzu 1IN (Informatika).

Pravidla hodnocení a ukončení předmětu

Aktivní účast a zvládnutí zadaného problému v požadované kvalitě.
Výuka běží podle týdenních plánů. Účast na cvičeních je povinná. Způsob nahrazení zameškaných cvičení je plně v kompetenci vyučujícího.

Učební cíle

Porozumět skriptovacímu jazyku Python a tvorbě jeho aplikací. Seznámit se základy tvorby grafického uživatelského prostředí v jazyce Python. Student bude shopen vytvořit aplikaci používající REST API/grpc.
Po úspěšné zvládnutí předmětu budou studenti schopni využít znalosti a chápání základních vlastností a role skriptovacího jazyka Python, jeho syntaxe a sémantiky.

Základní literatura

Harms, D., Macdonald, K.: Začínáme programovat v jazyce Python. Computer Press 2012, ISBN 80-7226-799-X. (CS)

Doporučená literatura

Burris, E.: Programming in the Large with Design Patterns, Pretty Print Press, 2012 (EN)
Scipy lecture notes [on-line 1.10.2019: http://www.scipy-lectures.org/] (EN)

Zařazení předmětu ve studijních plánech

  • Program B-KSI-P bakalářský 3 ročník, letní semestr, povinně volitelný
  • Program B-MET-P bakalářský 1 ročník, letní semestr, volitelný
    2 ročník, letní semestr, volitelný
  • Program N-AAE-P magisterský navazující 1 ročník, letní semestr, volitelný
  • Program N-MET-P magisterský navazující 1 ročník, letní semestr, volitelný

  • Program C-AKR-P celoživotní vzdělávání v akr. stud. programu

    specializace CLS , 1 ročník, letní semestr, volitelný

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

1. Vývojové prostředí pro programování v Python, PyCharm, VSCode
2 - 3. Základy jazyka Python, verze jazyka, prostředí, zásady psaní kódy v jazyce Python. Strukturování kódu. Komentáře. Statická analýza kódu.
4. List a Dictionary, Slicing, Key parametr, funkce, argumenty a vyjímky
5. Generátory, map, filter, yield
6. GUI
7. OOP, třída a interface
9. Testování a debugging programu v jazyce Python
10. Paralelismus a procesy
11. Robustnost a výkon aplikace
12. Python a REST API, grpc
13. Summarizace, opakování

Cvičení s počítačovou podporou

26 hod., povinná

Vyučující / Lektor

Osnova

1. Úvod, stručná historie vývoje programovacích jazyků, představení Python a vývojového prostředí PyCharm, VS Code.
2. Základní příkazy, datové typy a operátory, funkce, moduly a třídy
3. Strukturování kódu, komentáře, dokumentace, statická analýza a zpracování výjimek.
4. List, Dictionary, Slicing apod.
5. Datové struktury, efektivní implementace vyhledávání.
6. Programování aplikací s grafickým uživatelským rozhraním.
7. a 8. OOP.
9. Integrace aplikace v širším ekosystému, kontejnerizace
10. Zpracování dokumentů XML nebo JSON, knihovny pro ukládání a vyhledávání.
11. Stream handling
12. Moderní koncepty vývoje, REST API, grpc
13. Shrnutí.