Detail předmětu
Skriptovací jazyky
ISJ Ak. rok 2024/2025 letní semestr 5 kreditů
Základní koncepty skriptovacích jazyků, skriptování versus programování, přehled vývoje skriptovacích jazyků, makrojazyky, tvorba komponent, základy jazyka Python, skriptování v operačních systému Unix, objektově-orientované programování ve skriptovacích jazycích, souběh a paralelismus.
Garant předmětu
Koordinátor předmětu
Jazyk výuky
Zakončení
Rozsah
- 26 hod. přednášky
- 26 hod. projekty
Bodové hodnocení
- 51 bodů závěrečná zkouška
- 9 bodů půlsemestrální test
- 40 bodů projekty
Zajišťuje ústav
Přednášející
Cíle předmětu
Porozumět tématu skriptovacích jazyků a jejich aplikací, pochopit komplementaritu skriptovacích jazyků vzhledem k systémovým jazykům, jejich výhody a nevýhody. Seznámit se základy regulárních výrazů, použitím vhodných struktur a postupů zejména v jazyce Python (částečně i ruby a dalších).
Studenti se seznámí s moderními skriptovacími jazyky, po úspěšném zvládnutí předmětu budou schopni demonstrovat znalosti a chápání základních vlastností a role skriptovacích jazyků, syntaxe a sémantiky jazyka Python, implementovat skripty pro automatizaci systémových činností a vyvíjet jednoduché aplikace s použitím vhodných nástrojů. Studenti se naučí řešit problémy v jazyce Python formou pravidelných projektů. Zdokonalí se v praktickém užívání programátorských nástrojů.
Doporučené prerekvizity
- Základy programování (IZP)
- Operační systémy (IOS)
- Úvod do softwarového inženýrství (IUS)
Literatura studijní
Osnova přednášek
- Úvod, stručná historie vývoje skriptovacích jazyků, výhody a nevýhody, porovnání jazyků
- Regulární výrazy a jejich podpora ve skriptovacích jazycích
- Vytváření jednoduchých skriptů v prostředí OS Unix, automatizace systémových činností
- Jména v Pythonu, základní datové struktury a jejich implementace
- Slovník (hashovací struktura) a jeho implementace v Pythonu
- Funkce a jejich argumenty, moduly, zpracování výjimek
- Základy objektově orientovaného programování ve skriptovacích jazycích
- Pokročilé prvky objektového přístupu v Pythonu, vícenásobná dědičnost a pořadí hledání metod
- Základy jazyka ruby a srovnání s Pythonem
- Dekorátory funkcí a tříd
- Iterační protokol a iterovatelné objekty
- Generátory a jejich použití v kontextu funkcí
- Souběžnost a paralelismus
Osnova ostatní - projekty, práce
Samostatné projekty řešící zadané obecnější úlohy, předpokládá se naprogramování středně rozsáhlého skriptu v jazyce Python. Je požadováno elektronické odevzdání pomocí IS FIT.
V předmětu je místo jednoho či několika málo velkých projektů zadáno 8 miniprojektů, tedy od 3. přednášky téměř každý týden. Je k dispozici server, který projekty ještě před oficiálním odevzdáním prostřednictvím WIS automaticky ohodnotí, takže lze předem zjistit, kolik bude za aktuální řešení bodů. Půlsemestrální test a zkouška jsou přímo svázány s tématy, která si vyzkoušíte v rámci projektů.
Průběžná kontrola studia
- Půlsemestrální písemný test (9 bodů).
- Individuální projekt (40 bodů).
Kontrolovaná výuka zahrnuje půlsemestrální test a individuální projekt. Půlsemestrální test nemá náhradní termín. Ke zkoušce je třeba získat minimálně 1/3 bodů z bodovaných aktivit, přičemž 13 bodů je minim z projektu.
Rozvrh
Den | Typ | Týdny | Místn. | Od | Do | Kapacita | PSK | Skup | Info |
---|---|---|---|---|---|---|---|---|---|
Čt | přednáška | 1., 2., 3., 4., 5., 6., 7., 9., 10., 11., 12., 13. výuky | D105 | 08:00 | 09:50 | 316 | 1BIA 1BIB 2BIA 2BIB 3BIT | xx | Smrž |
Čt | přednáška | 2025-04-03 | D0206 | 08:00 | 09:50 | 316 | 1BIA 1BIB 2BIA 2BIB 3BIT | xx | Smrž |
Zařazení předmětu ve studijních plánech
- Program BIT, 1. ročník, volitelný
- Program BIT (anglicky), 1. ročník, volitelný