Detail předmětu

Skriptovací jazyky

ISJ Ak. rok 2024/2025 letní semestr 5 kreditů

Aktuální akademický rok

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

česky, anglicky

Zakončení

zkouška (písemná)

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

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

Literatura studijní

Osnova přednášek

  1. Úvod, stručná historie vývoje skriptovacích jazyků, výhody a nevýhody, porovnání jazyků
  2. Regulární výrazy a jejich podpora ve skriptovacích jazycích
  3. Vytváření jednoduchých skriptů v prostředí OS Unix, automatizace systémových činností
  4. Jména v Pythonu, základní datové struktury a jejich implementace
  5. Slovník (hashovací struktura) a jeho implementace v Pythonu
  6. Funkce a jejich argumenty, moduly, zpracování výjimek
  7. Základy objektově orientovaného programování ve skriptovacích jazycích
  8. Pokročilé prvky objektového přístupu v Pythonu, vícenásobná dědičnost a pořadí hledání metod
  9. Základy jazyka ruby a srovnání s Pythonem
  10. Dekorátory funkcí a tříd
  11. Iterační protokol a iterovatelné objekty
  12. Generátory a jejich použití v kontextu funkcí
  13. 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.

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ý
Nahoru