Detail předmětu

Skriptovací jazyky

FIT-ISJAk. rok: 2018/2019

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, konkurence a paralelismus.

Jazyk výuky

čeština

Počet kreditů

5

Výsledky učení předmětu

Studenti se seznámí s moderními skriptovacími jazyky, po úspěšné 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ů.

Způsob a kritéria hodnocení

  • Půlsemestrální písemný test (9 bodů).
  • Individuální projekt (40 bodů).

Podmínky zápočtu:
  • Zpracování alespoň jednoho individuálního projektu.

Učební cíle

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

Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky

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.

Doporučená literatura

Harms, D., Macdonald, K.: Začínáme programovat v jazyce Python. Computer Press, ISBN 80-7226-799-X (in Czech).
Lutz, M., Ascher, D.: Naučte se Python - Pohotová příručka. Grada, 2003, ISBN 80-247-0367-X (in Czech).
Driscoll, M: Python 201: Intermediate Python. Amazon Digital Services LLC, ASIN: B01LMUAYSO, 2016.
Beazley, D.M.: Python - Podrobná referenční příručka pro programovací jazyk Python. Neocortex (in Czech).
Abelson, H.: Structure and interpretation of computer programs, Cambridge. MIT Press, 2002.

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

  • Program IT-BC-3 bakalářský

    obor BIT , 1. ročník, letní semestr, volitelný

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

  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. Konkurence a paralelismus

Projekt

26 hod., povinná

Vyučující / Lektor

Osnova

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