Informace pro jednotlivé cvičení z předmětu SPJA naleznete zde.
Veškeré další informace o předmětu naleznete na adrese zde.

Studijní opora a materiály

K dispozici je studijní text.

Výuka

Úkoly na cvičení jsou pro Python 3.

Cvičení 1

První cvičení není bodované.
Instalace vývojového prostředí (Python pro Windows stáhnete z webové adresy zde)
Úvod do Pythonu.
Proměnné a jejich datové typy.
Cykly, podmínky a komentáře.
Kolekce (seznam, n-tice, slovník).
Definice funkce.

Společně projdeme a doděláme následující skript cv1_labs.py.

Cvičení 2

Státní svátek. Cvičení odpadá.

Cvičení 3

Bodované cvičení (max. 5 bodů).
Na téma cykly, podmínky, vytváření a volání funkcí, list comprehension.

Cvičení 4

Bodované cvičení (max. 5 bodů).
Na téma využití funkce map(), proměnlivý počet argumentů funkce, čtení ze souboru.
Soubor ke stažení calls.txt.

Cvičení 5

Bodované cvičení (max. 5 bodů).
Na téma třídy, objekty a jejich vlastnosti.
Skript pro práci na cvičení ke stažení skript.py.

Cvičení 6

Bodované cvičení (max. 5 bodů).
Na téma OOP a práce s GUI.
Zadání ke cvičení naleznete zde.
Archiv pro práci se soubory stáhnete Atomy.zip.

Cvičení 7

Bodované cvičení (max. 5 bodů).
Na téma OOP a práce s GUI. Pokračování z minulé hodiny.
Zadání ke cvičení naleznete zde.
Archiv pro práci se soubory Atomy.zip.

Cvičení 8

Bodované cvičení (max. 5 bodů).
Na téma XML a RSS čtečka.
Zadání a soubory ke cvičení naleznete zde rss_ctecka.zip.

Cvičení 9

Cvičení odpadá z důvodu rektorského volna.

Cvičení 10

Bodované cvičení (max. 5 bodů).
Na téma XML-RPC. Úkolem je dodělat server tak, aby komunikoval s klientem.
Zadání a soubory ke cvičení ke stažení zde forecast.zip.

Cvičení 11

Nebodované cvičení.
Úvod do webového frameworku Django.
Instalace, vytvoření prvního projektu, aplikace, modely, administrátorské rozhraní.
Prezentace k dnešnímu cvičení ZDE.
Tutoriál v češtině najdete zde nebo další jednoduchý zde.

Zadání projektu (max 30 b).
Projekt je povinný! Musíte jej odevzdat. Z tohoto úkolu je minimum alespoň 10 bodů.
Požadavky:
Aplikace bude obsahovat alespon 6 modelů (2 řešitelé) nebo 3 modely (1 řešitel), které budou vzájemně provázány vazbou.
K modelům vytvořte adekvátní administrátorské rozhraní.
Aplikace bude obsahovat alespoň 12 view (2 řešitelé) nebo 6 view (1 řešitel) 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ů (2 řešitelé) nebo 6 templatů (1 řešitel)).
Aplikace bude obsahovat alespoň 6 formulářů (2 řešitelé) nebo 3 formuláře (1 řešitel).
Výsledná aplikace by měla tvořit logický celek, tj. jednotlivé stránky na sebe budou odkazovat pomocí linků.
Blogovací a fórum aplikace nejsou nepřípustné, neboť se dělaly na přednášce.
Aplikace nemusí obsahovat grafické prvky a CSS styly.
Aplikace nesmí obsahovat generické view.

Aplikace může být např. velmi jednoduchá implementace služby Twitter, část školního informačního systému (udělování zápočtů studentům), nějaká část Facebooku, apod.

Cvičení 12

Nebodované cvičení.
Prezentace k dnešnímu cvičení ZDE.
Na téma Django - url, views, templates.

Vyřešený projekt z dnešního cvičení na čerpací stanice: drivers.zip
Ukázkový projekt knihovny:

Po tomto cvičení už byste měli být schopni začít pracovat na projektu. Vytvořit modely, url adresy, views i html šablony. Po příštím cvičení už jen stačí dodělat k několika url formuláře.

Cvičení 13

Nebodované cvičení.
Na téma Django - forms (formuláře).
Nahlásit téma projektu.

Cvičení 14

Odevzdání projektu. Pokud úlohu neodevzdáte v zadaném termínu, budou za každý započatý týden po řádném termínu odevzdání odečteny 3 body z maximálního přídělu.