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í
Odkaz na webhttp://mrl.cs.vsb.czJazyk výukyčeština
Rok zavedení2010/2011Rok zrušení
Určeno pro fakultyFEIUrčeno pro typy studiabakalářské
Výuku zajišťuje
Os. čís.JménoCvičícíPřednášející
FAB038 Ing. Tomáš Fabián, Ph.D.
GAU01 Ing. Jan Gaura, Ph.D.
HOL570 Ing. Michael Holuša
SIM0094 Ing. Radek Simkanič, DiS
SVO0120 Ing. Petra Svobodová
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

Způsob průběžné kontroly znalostí během semestru

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

E-learning

Další požadavky na studenta

Další požadavky na studenta nejsou kladeny.

Minimální znalostní požadavky

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

Prezenční forma (platnost od: 2013/2014 zimní semestr)
Název úlohyTyp úlohyMax. počet bodů
(akt. za podúlohy)
Min. počet bodů
Klasifikovaný zápočet Klasifikovaný zápočet 100 (100) 51
        Závěrečná písemka Písemka 40  15
        Odevzdání souboru úloh Projekt 30  10
        Odevzdání úloh zadaných na cvičení Laboratorní práce 30  6
Rozsah povinné účasti:

Zobrazit historii

Výskyt ve studijních plánech

Akademický rokProgramOborSpec.FormaJazyk výuky Konz. stř.RočníkZLTyp povinnosti
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 (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 (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
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 (1103R031) Výpočetní matematika K čeština Ostrava 3 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