Skriptovací jazyky (Scripting Languages Course)
Na této stránce naleznete informace pro přednášky a cvičení předmětu Skriptovací jazyky.
Informace ohledně přednášek naleznete na samostatné stránce.
Informace ohledně cvičení naleznete na samostatné stránce nebo stránce Vašeho cvičícího.
Zdrojové kódy z úvodních lekcí můžete najít v adresáři s Jupyter notebooky.
Jsou též k dispozici zdrojové kódy ke cvičením.
V průběhu semestru dostanete zadáno 8 úloh na cvičeních nebo jako domácí ukoly, které samostatně vypracujete. Samozřejmě se budete moci cvičícího doptat na případné nejasnosti. Tyto úlohy se budou týkat témat probraných na přednáškách. K jednotlivým cvičením budete též mít k dispozici krátký text vysvětlující danou problematiku. Za každé cvičení nebo úkol budete moci získat až 5 bodů. Celkové bodové ohodnocení se Vám bude počítat ze 6ti nejlepších výsledků, kterých na cvičeních dosáhnete (maximálně tedy 30 bodů). Toto je nastaveno z důvodů, že můžete onemocnět a tudíž se nebudete moci dostavit na cvičení apod.
Dále budete mít zadán projekt. Specifikace projektu bude vystaveno na této stránce a budete ní informováni na přednášce a cvičeních. Vašim úkolem je tuto úlohu samostatně vypracovat a v zadaném termínu předvést na cvičení svému cvičícímu, který ohodnotí funkčnost řešení a také způsob, jakým je úloha naprogramována. Úloha je za 30 bodů. Na pozdější odevzdání nebude brán zřetel. Projekt se odevzdává do systému Kelvin.
leProjekt je povinný a musíte jej odevzdat! Z tohoto úkolu musíte získat alespoň 10 bodů.
Proběhne také závěrečný test, který musíte absolvovat. Za tento test můžete získat až 40 bodů. Minimálně musíte získat 15 bodů.
Závěrečný test proběhne na ve zkouškovém období.
Termíny budou vypsány v EdISonu. Ve zkouškovém období také proběhne oprava (můžete přijít i vícekrát).
Test bude sestávat z programovacích úloh, které se budou odevzdávat do systému Kelvin. Nebude se požadovat znalost Django frameworku nebo jiných speciálních knihoven. Povolený zdroj informací je dokumentace k jazyku Python a studijní opora.
MAX bodů | MIN bodů | Poznámka | |
---|---|---|---|
Vypracování úloh na cvičeních a DÚ | 30 (40) | 10 | Bodování uvedeno v textu výše. |
Projekt | 30 | 10 | Samostatná práce. |
Závěrečný test | 40 | 15 |
Pro odevzdávání úloh bude sloužit systém Kelvin (pokud cvičící neurčí jinak).
Studijní opora je k dispozici v samostatném repozitáři skj-skripta [PDF].
Velmi pěkný totoriál o Pythonu je v kurzu PyLadies.
Doporučuji knihu Dive Into Python 3 pro přečtení.
Velice pěkný text je také z kurzu MIT 6.01.
-
Začátečnické informace o jazyce můžete nalézt v kurzu PyLadies.
-
Pro základy programování můžete využít knihu Think Python, kterou si můžete stáhnout zdarma.
-
Jako doplňkovou literaturu můžete použít oficiální Python Tutorial.
-
Sada přednášek z MIT, které vysvětlují použití Pythonu na různých úlohách.
-
Svůj programovací skill si můžete vyzkoušet např. na CodinGame.
Část našich cvičení se zabývá vývojem webových aplikací pomocí Django frameworku.
Pro zájemce o další informace z oblasti použití Django, doporučuji knihu The Django Book.
Pro studenty kombinované formy studia jsou úlohy dostupné v systému Kelvin.
Termín odevzdávání: na cvičeních v zápočtovém týdnu od 13.5.2024 do 17.5.2024.
Pomocí Django frameworku naprogramujte webovou aplikaci, která bude splňovat následující kritéria (můžete využít již hotového projektu do předmětu DS II s tím, že jeho návrh použijete jako základ Vaší Django aplikace):
- aplikace bude obsahovat alespoň 6 modelů, které budou vzájemně provázány vazbou
- k modelům vytvořte adekvátní administrativní rozhraní
- aplikace bude obsahovat alespoň 12 view a s tím spojené URL, které budou s modely pracovat
- view Vaší aplikace budou obsah předávat templatům (budete tedy implementovat 12 templatů)
- aplikace bude obsahovat alespoň 6 formulářů (ať už formulář vázaný na model nebo Váš vlastní)
- výsledná aplikace by měla tvořit nějaký logický celek, tj. jednotlivé stránky na sebe budou odkazoval pomocí linků
- blogovací a fórum aplikace nejsou přípustné, neboť jsme je dělali na přednášce
- projekt na téma benzínové stanice není přípustný, neboť jsme jej dělali na cvičeních
- aplikace by měla obsahovat grafické prvky a CSS styly (pro jednoduchout využijte např. knihovnu Bootstrap)
- aplikace nemusí obsahovat geografickou složku
- aplikace nesmí obsahovat generické view
Aplikace může být např. Vaše velmi jednoduchá implementace služby Twitter, část školního informačního systému, základní GitHub, apod.