Tato stránka popisuje, jak budou vypadat testy na cvičeních a časem bude obsahovat i popis domácích úloh. Podívejte se prosím na stránku průvodce předmětem, kde najdete podrobnosti o tom, jak funguje hodnocení.

Testy na cvičení

Toto je rozpis testů na cvičení. Test bude probíhat na začátku cvičení (maximální doba trvání testu je 45 minut).

Týden (datum) Téma Podrobnosti o rozšíření
05 (18. 3. - 22. 3.) T1: Základní skriptování v shellu (roury) Druhý úkol podobného rozsahu
09 (15. 4. - 19. 4.) T2: Používání Git CLI (včetně větvení/spojování a push/pull přes SSH) Složitější větvení
14 (20. 5. - 24. 5.) T3: Sestavovací nástroj make (úprava stávajícího nastavení) Složitější nastavení projektu založeného na make

Očekává se, že se dostavíte na cvičení, na které jste zapsáni.

Pokud potřebujete přijít na jiné cvičení: kontaktujte nás prosím prostřednictvím confidential issue (alespoň týden předem a doložte vaše důvody, prosím, nějakým rozumným způsobem), abychom pro vás mohli najít náhradní termín (upozorňujeme, že účast na cvičeních jiného předmětu nebo návštěva sportovní akce není rozumným důvodem). Pokud se na zkoušku nedostavíte z důvodu nějakých nepředvídatelných okolností, kontaktujte nás prosím co nejdříve (opět prostřednictvím confidential issue). Počítejte s tím, že dodatečný termín se bude pravděpodobně konat ve zkouškovém období.

Pokud jste přihlášeni na zvláštní páteční cvičení, zkontrolujte si tady, prosím, na začátku 5. týdne, zda bude nutné ho rozdělit (tj. zda by polovina studentů potřebovala přijít v 10:40 a druhá polovina v 11:25).

AKTUALIZACE: Momentálně je na páteční cvičení 23bNSWI177x13 přihlášeno více jak 30 studentů. Pokud váš SISový login začíná na [a-k], přijďte, prosím, v 10.40; pokud váš login začíná na [l-z], prosím, přijďte v 11:30.

Test se bude psát na školních počítačích. Ujistěte se, že se tam můžete přihlásit a že máte vše pohodlně nastavené.

Vaše řešení bude odevzdáno prostřednictvím GitLabu nebo jiného Gitového repozitáře: ujistěte se, že umíte provést klonování prostřednictvím příkazové řádky (pro první test v 5. týdnu budete moci použít webové rozhraní GitLabu, ale použití nástrojů CLI je ve skutečnosti jednodušší a všechny potřebné příkazy budete znát ze cvičení 04).

Můžete používat naše webové stránky, off-line manuálové stránky a můžete nahlížet do svých poznámek a řešení příkladů, které jsou součástí našich materiálů.

Nesmíte používat žádná jiná zařízení (mobilní telefony, vlastní notebooky atd.), nahlížet do jiných on-line zdrojů (stroje budou mít stejně omezený přístup k internetu) ani sdělovat své řešení ostatním studentům.

Jinými slovy, testy na cvičení vyžadují, abyste dokázali řešit úkoly samostatně pouze s pomocí technické dokumentace.

Jakýkoli pokus o obejití výše uvedených pravidel (např. pokus o vyhledávání na StackOverflow na mobilním telefonu) znamená okamžité neúspěšné ukončení předmětu.

Pokud zadání nerozumíte, můžete samozřejmě požádat učitele o dovysvětlení. Pokud je zřejmé, že se ubíráte správným směrem a potřebujete jen trochu postrčit, můžeme vám i lehce poradit.

Ukázková úloha

Napište skript (shellovou rouru), které přečte logy webového serveru a vypíše den s nejvyšším počtem požadavků.

Logy budou ve stejném formátu jako v příkladu na cvičení:

2023-01-05,02:35:05,192.168.18.232,622,https://example.com/charlie.html
2023-01-05,09:01:33,10.87.6.151,100,https://example.com/bravo.html
2023-01-06,17:25:17,52.168.104.245,1033,https://example.com/delta/delta.html

Pro výše uvedená data předpokládáme, že skript vypíše následující na svém výstupu.

2023-01-05

Log dostane skript na standardním vstupu, datum vypište na standardní výstup. Můžete předpokládat, že vstup není nijak poškozený. Nepředpokládejte nic o pořadí vstupních řádek.

Domácí úlohy

Toto je předběžný rozvrh domácích úloh a jejich témat (předpokládáme, že deadline druhé úlohy bude zasahovat do zkouškového období).

Týdny Téma Podrobnosti o rozšíření
07 - 10 T4: Složitější shellový skript Další funkce nad rámec hlavní úlohy
12 - 15 T5: Nastavení projektu (CI, nástroje pro sestavení, Git) Další funkce nad rámec hlavní úlohy

Stejně jako v případě testů na cvičení bude vaše řešení odevzdáno k vyhodnocení prostřednictvím Gitu.

Pro toto řešení můžete použít prakticky všechny dostupné zdroje, včetně manuálových stránek, našich webových stránek, on-line výukových programů nebo služeb, jako je ChatGPT a podobně.

Pokud odněkud kopírujete (nebo kopírujete a upravujete) své řešení (to se týká i odpovědí z nástrojů umělé inteligence), musíte řádně uvést své zdroje. Nemusíte zapisovat použití manuálových stránek nebo webových stránek předmětu.

Bez ohledu na použité zdroje musíte být schopni pochopit a vysvětlit návrh/implementaci svého řešení. Neschopnost vysvětlit své řešení je stejná, jako kdyby nebyla úloha vůbec odevzdána.

Domácí úlohy jsou individuální, tedy je musí řešit každý student samostatně. Diskutovat o svém řešení s kolegy je v pořádku, předkládat jejich práci jako svou je zakázáno.

Úloha T4: shellový skript

Detaily se tu objeví okolo týdne 07.

Úloha T5: nastavení projektu

Detaily se tu objeví okolo týdne 12.