Detail předmětu
Python v aplikované vědě
FSI-T0PAk. rok: 2018/2019
Obsahem kursu je řešení modelových úloh, na kterých budou ilustrovány postupy softwarového inženýrství vedoucí k jejich řešení. Studenti budou seznámeni s principy technik test-driven development, code review a naučí se, jak strukturovat a dokumentovat svůj kód tak, aby se vzrůstající složitostí neztrácel na použitelnosti. Studenti mohou pro práci využívat grafické prostředí Enthought Canopy (k dispozici pro MS Windows, Mac OSX i Linux).
Jazyk výuky
Počet kreditů
Garant předmětu
Zajišťuje ústav
Výsledky učení předmětu
Prerekvizity
Plánované vzdělávací činnosti a výukové metody
Způsob a kritéria hodnocení
Učební cíle
Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky
Základní literatura
Scipy lecture notes: http://www.scipy-lectures.org/ (CS)
Summerfield, M.: Python 3 - Výukový kurz, COMPUTER PRESS, 2012 (CS)
Zařazení předmětu ve studijních plánech
Typ (způsob) výuky
Přednáška
Vyučující / Lektor
Osnova
Struktura softwarového projektu v Pythonu, struktura modulů a balíčků.
Proměnné, základní datové typy, funkce, předávání hodnotou / odkazem
Úvod do oběktově orientovaného programování (OOP)
Úvod do návrhových vzorů, použití vzoru "strategie".
Úvod to testování a do vizualizace dat
Prohloubení znalostí OOP, návrhové vzory "továrna", "dekorátor"
Tvorba dokumentace, návrhové vzory "fasáda" a "adaptér".
Použití modulů třetích stran.
Tvorba grafických (GUI) aplikací, návrhové vzory "pozorovatel" a MVC
Tvorba GUI aplikací, návrhový vzory "stav".
Záludnosti jazyka Python
Cvičení s počítačovou podporou
Vyučující / Lektor
Osnova
Praktická tvorba formálně správného Python projektu
Cvičný projekt Vrhací kostka
Vrhací kostka - objektové rozhraní
Vrhací kostka - tvorba falešné kostky
Vrhací kostka - testování funkčnosti, odhalení falešných kostek
Vrhací kostka - zobecnění
Simulace deskové hry
Používáme Google Deep Dream
GUI projekt
GUI projekt
praktické ukázky