460-2015/01 – Skriptovací programovací jazyky a jejich aplikace (SPJA)

Garantující katedraKatedra informatikyKredity4
Garant předmětudoc. Dr. Ing. Eduard SojkaGarant verze předmětudoc. Dr. Ing. Eduard Sojka
Úroveň studiapregraduální nebo graduálníPovinnostvolitelný odborný
Ročník2Semestrzimní
Jazyk výukyčeština
Rok zavedení2010/2011Rok zrušení2021/2022
Určeno pro fakultyFEIUrčeno pro typy studiabakalářské
Výuku zajišťuje
Os. čís.JménoCvičícíPřednášející
HOL570 Ing. Michael Holuša, Ph.D.
Rozsah výuky pro formy studia
Forma studiaZp.zak.Rozsah
prezenční Klasifikovaný zápočet 2+2
kombinovaná Klasifikovaný zápočet 10+4

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 prakticky významné aplikace.

Vyučovací metody

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

Anotace

Předmět si klade za cíl seznámit posluchače s rysy moderních skriptovacích jazyků a s jejich použitím. 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:

D. Harms, K. McDonald, Začínáme programovat v jazyce Python, CPress, ISBN: 80-722-6799-X M. Lutz, D. Ascher, Naučte se Python, Grada, ISBN: 80-247-0367-X M. Lutz, Programming Python, 2nd Edition, Oreilly & Associates Inc, 2001, ISBN-13: 9780596000851 / ISBN-10: 0596000855 On-Line dokumentace k jazyku Python: docs.python.org

Doporučená literatura:

S. Hellegouarch, CherryPy Essentials: Rapid Python Web Application Development, Packt Publishing Limited, ISBN: 1904811841

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

Samostatné vypracování zadaných úloh.

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. Perspektivy skriptovacích jazyků. 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, closures, 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. Využití návrhových vzorů pro efektivní implementaci objektově orientovaného kódu. 7. Standardní a aplikačně zaměřené knihovny v jazyce Python. Příklady použití. 8. Využití jazyka Python pro konstruování webových aplikací. Práce s vestavěným webovým serverem. 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í na 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. Paralelní programování 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. Pokročilé techniky objektového programování, využití návrhových vzorů pro efektivní vytváření aplikací. 7. Představení standardní knihovny. Práce s vestavěným webovým serverem, vzdáleným voláním funkcí, XML knihovnou ElementTree. 8. Vytváření webových aplikací. Realizace objektového modelu URI. Vytváření formulářů. Spolupráce s klientem pomocí JavaScriptu. 9. Pokročilé programování webových aplikací. Výměna dat s klientem pomocí XML a JSON. 10. Realizace webových služeb architekturou REST. 11. Realizace propojení s databází. 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: 2011/2012 zimní semestr, platnost do: 2018/2019 letní 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
        Odevzdání souboru úloh Projekt 60  25
        Závěrečná písemka Písemka 40  15
Rozsah povinné účasti: Student je povinen se účastnit alespoň 80% výuky.

Zobrazit historii

Podmínky absolvování předmětu a účast na cvičeních v rámci ISP:

Zobrazit historii

Výskyt ve studijních plánech

Akademický rokProgramObor/spec.Spec.ZaměřeníFormaJazyk výuky Konz. stř.RočníkZLTyp povinnosti
2021/2022 (B2660) Počítačové systémy pro průmysl 21. století P čeština Ostrava 3 povinný stu. plán
2020/2021 (B2660) Počítačové systémy pro průmysl 21. století P čeština Ostrava 3 povinný stu. plán
2019/2020 (B2660) Počítačové systémy pro průmysl 21. století P čeština Ostrava 3 povinný stu. plán
2019/2020 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika P čeština Ostrava 3 volitelný odborný stu. plán
2019/2020 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika P čeština Ostrava 2 volitelný odborný stu. plán
2019/2020 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika P čeština Ostrava 2 volitelný odborný stu. plán
2019/2020 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie P čeština Ostrava 2 volitelný odborný stu. plán
2019/2020 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika K čeština Ostrava 3 volitelný odborný stu. plán
2019/2020 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika K čeština Ostrava 2 volitelný odborný stu. plán
2019/2020 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika K čeština Ostrava 2 volitelný odborný stu. plán
2019/2020 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie K čeština Ostrava 2 volitelný odborný stu. plán
2018/2019 (B2660) Počítačové systémy pro průmysl 21. století P čeština Ostrava 3 povinný stu. plán
2018/2019 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika P čeština Ostrava 3 volitelný odborný stu. plán
2018/2019 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika P čeština Ostrava 2 volitelný odborný stu. plán
2018/2019 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika P čeština Ostrava 2 volitelný odborný stu. plán
2018/2019 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie P čeština Ostrava 2 volitelný odborný stu. plán
2018/2019 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika K čeština Ostrava 3 volitelný odborný stu. plán
2018/2019 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika K čeština Ostrava 2 volitelný odborný stu. plán
2018/2019 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika K čeština Ostrava 2 volitelný odborný stu. plán
2018/2019 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie K čeština Ostrava 2 volitelný odborný stu. plán
2017/2018 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika P čeština Ostrava 3 volitelný odborný stu. plán
2017/2018 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika K čeština Ostrava 3 volitelný odborný stu. plán
2017/2018 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika P čeština Ostrava 2 volitelný odborný stu. plán
2017/2018 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika K čeština Ostrava 2 volitelný odborný stu. plán
2017/2018 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika P čeština Ostrava 2 volitelný odborný stu. plán
2017/2018 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika K čeština Ostrava 2 volitelný odborný stu. plán
2017/2018 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie P čeština Ostrava 2 volitelný odborný stu. plán
2017/2018 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie K čeština Ostrava 2 volitelný odborný stu. plán
2017/2018 (B2660) Počítačové systémy pro průmysl 21. století P čeština Ostrava 3 povinný stu. plán
2016/2017 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika P čeština Ostrava 3 volitelný odborný stu. plán
2016/2017 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika K čeština Ostrava 3 volitelný odborný stu. plán
2016/2017 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika P čeština Ostrava 2 volitelný odborný stu. plán
2016/2017 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika K čeština Ostrava 2 volitelný odborný stu. plán
2016/2017 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika P čeština Ostrava 2 volitelný odborný stu. plán
2016/2017 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika K čeština Ostrava 2 volitelný odborný stu. plán
2016/2017 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie P čeština Ostrava 2 volitelný odborný stu. plán
2016/2017 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie K čeština Ostrava 2 volitelný odborný stu. plán
2016/2017 (B2660) Počítačové systémy pro průmysl 21. století P čeština Ostrava 3 povinný stu. plán
2015/2016 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika P čeština Ostrava 3 volitelný odborný stu. plán
2015/2016 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika P čeština Ostrava 2 volitelný odborný stu. plán
2015/2016 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika P čeština Ostrava 2 volitelný odborný stu. plán
2015/2016 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie P čeština Ostrava 2 volitelný odborný stu. plán
2015/2016 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika K čeština Ostrava 3 volitelný odborný stu. plán
2015/2016 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika K čeština Ostrava 2 volitelný odborný stu. plán
2015/2016 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie K čeština Ostrava 2 volitelný odborný stu. plán
2015/2016 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika K čeština Ostrava 2 volitelný odborný stu. plán
2014/2015 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika P čeština Ostrava 3 volitelný odborný stu. plán
2014/2015 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika P čeština Ostrava 2 volitelný odborný stu. plán
2014/2015 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika P čeština Ostrava 2 volitelný odborný stu. plán
2014/2015 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie P čeština Ostrava 2 volitelný odborný stu. plán
2014/2015 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika K čeština Ostrava 3 volitelný odborný stu. plán
2014/2015 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika K čeština Ostrava 2 volitelný odborný stu. plán
2014/2015 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika K čeština Ostrava 2 volitelný odborný stu. plán
2014/2015 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie K čeština Ostrava 2 volitelný odborný stu. plán
2013/2014 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika P čeština Ostrava 3 volitelný odborný stu. plán
2013/2014 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika K čeština Ostrava 3 volitelný odborný stu. plán
2013/2014 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika P čeština Ostrava 2 volitelný odborný stu. plán
2013/2014 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika K čeština Ostrava 2 volitelný odborný stu. plán
2013/2014 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika P čeština Ostrava 2 volitelný odborný stu. plán
2013/2014 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika K čeština Ostrava 2 volitelný odborný stu. plán
2013/2014 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie P čeština Ostrava 2 volitelný odborný stu. plán
2013/2014 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie K čeština Ostrava 2 volitelný odborný stu. plán
2012/2013 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika P čeština Ostrava 2 volitelný odborný stu. plán
2012/2013 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika K čeština Ostrava 2 volitelný odborný stu. plán
2012/2013 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika P čeština Ostrava 3 volitelný odborný stu. plán
2012/2013 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika P čeština Ostrava 2 volitelný odborný stu. plán
2012/2013 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie P čeština Ostrava 2 volitelný odborný stu. plán
2012/2013 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika K čeština Ostrava 3 volitelný odborný stu. plán
2012/2013 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika K čeština Ostrava 2 volitelný odborný stu. plán
2012/2013 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie K čeština Ostrava 2 volitelný odborný stu. plán
2011/2012 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika P čeština Ostrava 2 volitelný odborný stu. plán
2011/2012 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika P čeština Ostrava 3 povinně volitelný stu. plán
2011/2012 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika K čeština Ostrava 3 povinně volitelný stu. plán
2011/2012 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika K čeština Ostrava 2 volitelný odborný stu. plán
2011/2012 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika P čeština Ostrava 2 volitelný odborný stu. plán
2011/2012 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie P čeština Ostrava 2 volitelný odborný stu. plán
2011/2012 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika K čeština Ostrava 2 volitelný odborný stu. plán
2011/2012 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie K čeština Ostrava 2 volitelný odborný stu. plán
2010/2011 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika P čeština Ostrava 3 povinně volitelný stu. plán
2010/2011 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika K čeština Ostrava 3 povinně volitelný stu. plán
2010/2011 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika P čeština Ostrava 2 volitelný odborný stu. plán
2010/2011 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika P čeština Ostrava 2 volitelný odborný stu. plán
2010/2011 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika P čeština Ostrava 2 volitelný odborný stu. plán
2010/2011 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie P čeština Ostrava 2 volitelný odborný stu. plán
2010/2011 (B2647) Informační a komunikační technologie (1103R031) Výpočetní matematika K čeština Ostrava 2 volitelný odborný stu. plán
2010/2011 (B2647) Informační a komunikační technologie (2601R013) Telekomunikační technika K čeština Ostrava 2 volitelný odborný stu. plán
2010/2011 (B2647) Informační a komunikační technologie (2612R025) Informatika a výpočetní technika K čeština Ostrava 2 volitelný odborný stu. plán
2010/2011 (B2647) Informační a komunikační technologie (2612R059) Mobilní technologie K čeština Ostrava 2 volitelný odborný 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



2019/2020 zimní
2018/2019 zimní
2017/2018 zimní
2016/2017 zimní
2015/2016 zimní
2014/2015 zimní
2013/2014 zimní
2012/2013 zimní
2011/2012 zimní
2010/2011 zimní