460-2060/01 – Skriptovací jazyky (SKJ)

Garantující katedraKatedra informatikyKredity4
Garant předmětuIng. Jan Gaura, Ph.D.Garant verze předmětuIng. Jan Gaura, Ph.D.
Úroveň studiapregraduální nebo graduálníPovinnostvolitelný odborný
Ročník2Semestrletní
Jazyk výukyčeština
Rok zavedení2019/2020Rok zrušení
Určeno pro fakultyFEIUrčeno pro typy studiabakalářské
Výuku zajišťuje
Os. čís.JménoCvičícíPřednášející
ALB0016 Ing. Adam Albert
FAB038 Ing. Tomáš Fabián, Ph.D.
GAU01 Ing. Jan Gaura, Ph.D.
SIG0033 Ing. Filip Šigut
Rozsah výuky pro formy studia
Forma studiaZp.zak.Rozsah
prezenční Klasifikovaný zápočet 2+2
kombinovaná Klasifikovaný zápočet 0+10

Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi

Předmět si klade za cíl seznámit posluchače s rysy moderních skriptovacích jazyků a jejich aplikacemi. Důraz je kladen na praktické použití ve vývoji aplikací.

Vyučovací metody

Přednášky
Cvičení (v učebně)

Anotace

V předmětu jsou posluchači seznamováni zejména s jazykem Python. Důraz je kladen zejména na předvedení pestré škály možnosti použití jazyka pro řešení v praxi frekventovaných úloh. Způsob řešení problémů je srovnáván s řešeními pomocí klasických systémových programovacích jazyků, jako jsou Java, C# nebo C++. Srovnáním je ilustrována výhodnost použití skriptovacích jazyků. V předmětu je kladen důraz na to, aby byly předávány zejména informace, které jsou pro posluchače významné z hlediska tvorby prakticky užitečných a pro uživatele atraktivních aplikací, které jsou ale současně při použití skriptovacích jazyků relativně snadno zvládnutelné. Přednášky jsou doplněny cvičeními.

Povinná literatura:

PILGRIM, Mark. Ponořme se do Python(u) 3: Dive into Python 3. Praha: CZ.NIC, c2010. CZ.NIC. ISBN 978-80-904248-2-1. BARRY, Paul. Head First Python. O′Reilly, 2016. ISBN: 978-1491919538.

Doporučená literatura:

HARMS, Daryl D., MCDONALD, Kenneth. Začínáme programovat v jazyce Python. Brno: Computer Press, 2003. ISBN 80-722-6799-x.

Forma způsobu ověření studijních výsledků a další požadavky na studenta

Samostatné vypracování zadaných úloh na cvičení.

E-learning

Další požadavky na studenta

Další požadavky na studenta nejsou kladeny.

Prerekvizity

Předmět nemá žádné prerekvizity.

Korekvizity

Předmět nemá žádné korekvizity.

Osnova předmětu

Přednášky 1. Skriptovací jazyky. Motivace pro jejich použití. Hlavní rysy a srovnání některých populárních skriptovacích jazyků - Ruby, JavaScript, Perl, Python, Tcl. 2. Programovací jazyk Python. Historie a vlastnosti. 3. Konstrukce jazyka Python: Řízení toku, definice funkcí, způsoby předávání parametrů, volání funkcí. 4. Konstrukce jazyka Python: Kolekce, iterátory, generátory, closure, reflexe. Ukázky použití jednotlivých technik a jejich srovnání s technologiemi Java nebo C#. 5. Python a objektové programování: Definice tříd, metod, proměnných. 6. Testování a ladění zdrojového kódu. 7. Standardní a aplikačně zaměřené knihovny v jazyce Python. Práce s vestavěným webovým serverem, vzdáleným voláním funkcí, XML knihovnou ElementTree a JSON formátem. 8. Využití jazyka Python pro konstruování webových aplikací. Webové frameworky pro Python. 9. Realizace „server-side“ webové aplikace. Realizace „klient-side“ webové aplikace. Vytváření formulářů. Spolupráce s klientem pomocí JavaScriptu. 10. Webové služby, výměna dat pomocí XML a JSON. Realizace webových služeb s využitím metody REST. 11. Napojení pythonovských programů na databáze a prostorové databáze. Vytváření geografických webových aplikací. 12. Využití jazyka Python pro konstruování GUI. 13. Využití jazyka Python pro konstruování multimediálních aplikací a her. 14. Programování paralelních a matematických aplikací v Pythonu. Cvičení Na cvičeních budou probírána témata teoreticky vysvětlená na přednáškách. 1. Seznámení se z vývojovým prostředím. Ukázka interaktivního režimu. Vytváření skriptů ve vybraných jazycích a jejich porovnání. 2. Představení základních konstrukcí jazyka Python, řízení toku, práce s typy list a slovník. 3. Definice funkcí, způsoby předávání parametrů, volání funkcí, zápis lambda funkcí a jejich využití pro práci s listy. 4. Představení kolekcí, iterátorů, generátorů, closures a reflexe. Ukázka použití jednotlivých technik a jejich srovnání s technologiemi Java nebo C#. 5. Ukázka objektově orientovaného programování. Definice tříd, metod, proměnných. 6. Představení standardní knihovny. Práce s vestavěným webovým serverem, XML knihovnou ElementTree. 7. Realizace vzdáleného volání metod pomocí XML-RPC. 8. Vytváření webových aplikací. Realizace datového modelu. 9. Vytváření webových aplikací. Realizace formulářů. Spolupráce s klientem pomocí JavaScriptu. 10. Pokročilé programování webových aplikací. Výměna dat s klientem pomocí XML a JSON. 11. Práce s prostorovými daty. 12. Konstrukce GUI v jazyce Python 13. Programování s vlákny a procesy. 14. Závěrečný test.

Podmínky absolvování předmětu

Kombinovaná forma (platnost od: 2021/2022 zimní semestr)
Název úlohyTyp úlohyMax. počet bodů
(akt. za podúlohy)
Min. počet bodůMax. počet pokusů
Klasifikovaný zápočet Klasifikovaný zápočet 100 (100) 51 3
        Závěrečná písemka Písemka 40  15
        Odevzdání souboru úloh Jiný typ úlohy 30  10
        Projekt Projekt 30  10
Rozsah povinné účasti: Účast na cvičeních je povinná a je kontrolována. S rozsahem povinné účastí seznámí studenty garant předmětu na začátku semestru.

Zobrazit historii

Podmínky absolvování předmětu a účast na cvičeních v rámci ISP: Splnění všech povinných úkolů v individuálně dohodnutých termínech.

Zobrazit historii

Výskyt ve studijních plánech

Akademický rokProgramObor/spec.Spec.ZaměřeníFormaJazyk výuky Konz. stř.RočníkZLTyp povinnosti
2023/2024 (B0613A140014) Informatika INF K čeština Ostrava 2 povinný stu. plán
2023/2024 (B0613A140014) Informatika INF P čeština Ostrava 2 povinný stu. plán
2023/2024 (B0541A170008) Výpočetní a aplikovaná matematika P čeština Ostrava 2 volitelný odborný stu. plán
2023/2024 (B0541A170008) Výpočetní a aplikovaná matematika K čeština Ostrava 2 volitelný odborný stu. plán
2022/2023 (B0613A140014) Informatika INF K čeština Ostrava 2 povinný stu. plán
2022/2023 (B0613A140014) Informatika INF P čeština Ostrava 2 povinný stu. plán
2022/2023 (B0714A060023) Komunikační a informační technologie KS K čeština Ostrava 2 povinně volitelný typu A stu. plán
2022/2023 (B0714A060023) Komunikační a informační technologie KS P čeština Ostrava 2 povinně volitelný typu A stu. plán
2022/2023 (B0541A170008) Výpočetní a aplikovaná matematika K čeština Ostrava 2 volitelný odborný stu. plán
2022/2023 (B0541A170008) Výpočetní a aplikovaná matematika P čeština Ostrava 2 volitelný odborný stu. plán
2022/2023 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika P čeština Ostrava 2 volitelný odborný stu. plán
2022/2023 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika K čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B0613A140014) Informatika INF P čeština Ostrava 2 povinný stu. plán
2021/2022 (B0613A140014) Informatika INF K čeština Ostrava 2 povinný stu. plán
2021/2022 (B0541A170008) Výpočetní a aplikovaná matematika P čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B0541A170008) Výpočetní a aplikovaná matematika K čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika P čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika P čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika K čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika K čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie P čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie K čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika P čeština Ostrava 2 volitelný odborný stu. plán
2021/2022 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika K čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B0613A140014) Informatika INF K čeština Ostrava 2 povinný stu. plán
2020/2021 (B0613A140014) Informatika INF P čeština Ostrava 2 povinný stu. plán
2020/2021 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika P čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika P čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika P čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie P čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika K čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika K čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika K čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie K čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B0541A170008) Výpočetní a aplikovaná matematika P čeština Ostrava 2 volitelný odborný stu. plán
2020/2021 (B0541A170008) Výpočetní a aplikovaná matematika K čeština Ostrava 2 volitelný odborný stu. plán
2019/2020 (B0541A170008) Výpočetní a aplikovaná matematika P čeština Ostrava 2 volitelný odborný stu. plán
2019/2020 (B0541A170008) Výpočetní a aplikovaná matematika K čeština Ostrava 2 volitelný odborný stu. plán
2019/2020 (B0613A140014) Informatika INF P čeština Ostrava 2 povinný stu. plán
2019/2020 (B0613A140014) Informatika INF K čeština Ostrava 2 povinný stu. plán

Výskyt ve speciálních blocích

Název blokuAkademický rokForma studiaJazyk výuky RočníkZLTyp blokuVlastník bloku

Hodnocení Výuky



2021/2022 letní
2020/2021 letní