Programování v Pythonu (FSI-VP0-A)

Akademický rok 2026/2027
Garant: Ing. Jan Turčínek, Ph.D.  
Garantující pracoviště: ÚAI všechny předměty garantované tímto pracovištěm
Jazyk výuky: angličtina
Typ předmětu: oborový předmět
Cíle předmětu:
 
Výstupy studia a kompetence:
 
Prerekvizity:
 
Obsah předmětu (anotace):

This course introduces students to the basics of modern programming in Python and to the procedures for creating high-quality, clear, and maintainable code. Students will learn how to work with the development environment, versioning, and basic tools for code analysis. The course covers key elements of the language, such as data structures, functions, exceptions, generators, iterators, and the principles of object-oriented programming. It also includes the basics of graphical user interfaces, testing, program debugging, parallel processing, and application performance optimization. The course concludes with the practical use of Python for communication via REST API and gRPC and a summary of the knowledge acquired. The aim is to prepare students to independently create robust and efficient applications in Python.

Metody vyučování:
 
Způsob a kritéria hodnocení:
 
Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky:
 
Typ (způsob) výuky:
    Přednáška  13 × 2 hod. nepovinná                  
    Cvičení s počítačovou podporou  13 × 2 hod. povinná                  
Osnova:
    Přednáška

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

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í.

Literatura - základní:
1. Harms, D., Macdonald, K.: Začínáme programovat v jazyce Python. Computer Press 2012, ISBN 80-7226-799-X.
Literatura - doporučená:
1. Scipy lecture notes [on-line 1.10.2019: http://www.scipy-lectures.org/]
2. Burris, E.: Programming in the Large with Design Patterns, Pretty Print Press, 2012
Zařazení předmětu ve studijních programech:
Program Forma Obor Spec. Typ ukončení   Kredity     Povinnost     St.     Roč.     Semestr  
B-STR-P prezenční studium AIŘ Aplikovaná informatika a řízení -- zá,zk 4 Povinný 1 3 L
C-AKR-P prezenční studium CLS Předměty letního semestru -- zá,zk 4 Volitelný 1 1 L