4IT101 Programování v Javě - cvičící Tomáš Michalička ZS 2020/2021

Kontakt

Mimo mail mě můžete najít na LinkedInu, Facebooku a jinde.

Bodování

Programovací úkoly 4 úkoly po 5 bodech
Programovací test 10 bodů, Doporučená příprava na test
Teoretické úkoly 1 referát a 1 zadání semestrálky po 5 bodech
Semestrální práce 30 bodů
Zkouškový test 30 bodů

Na cvičeních bude možné získat body v rychlých kvízech (max 3 body) a za aktivitu (max 7 bodů). Tyto body jsou nad rámec 100 bodů.

Harmonogram

Cvičení Datum Program cvičení Bodované aktivity
1 30.9.2020 Představení kurzu, seznámení s IntelliJ IDEA, první aplikace, struktura kódu, OOP, primitivní datové typy -
2 7.10.2020 Zapouzdření, modifilátory přístupu, jmenné konvence, podmínky -
3 14.10.2020 Rozhraní, pole, seznamy Zadání 1. úkolu (programovací)
4 21.10.2020 Testování a ladění -
5 4.11.2020 Cykly, množiny, equals a hashCode Odevzdání 1. úkolu, zadání 2. úkolu (programovací)
6 11.11.2020 Statické prvky třídy, třída System -
7 18.11.2020 Enum; obalové třídy primitivních datových typů; třídy Math a String; regulární výrazy Odevzdání 2. úkolu, zadání 3. úkolu (programovací)
8 25.11.2020 Programovací test Test
9 2.12.2020 Mapy Odevzdání 3. úkolu, zadání 4. úkolu (programovací)
10 9.12.2020 Abstraktní třídy, třídění a vyhledávání (1. část) Odevzdání zadání semestrální práce
11 16.12.2020 Třídění a vyhledávání (2. část), práce se soubory -
X 31.12.2020 23:59 - Řádný termín odevzdání semestrální práce*

* Semestrální práci je možné odevzdat i po tomto termínu. Za každý započatý týden zpoždění ale budete penalizováni 3 body. Semestrální práce musí být odevzdána alespoň 24 hodin před obhajobou.

Program cvičení je orientační a bude upravován podle toho, jak budeme stíhat probrat látku. Důležité je, abyste si ze cvičení něco odnesli (i za cenu toho, že to bude trvat déle).

Zadání programovacích domácích úkolů

1. domácí úkol

Vaším úkolem bude implementovat seznam úkolů. Stáhněte si projekt a implementujte interface podle javadocu.

2. domácí úkol

Vaším úkolem bude implementovat knihovnu. Stáhněte si projekt a implementujte interface podle javadocu. K metodám getBookByName, getBooksByAuthor a getBooksByCategory napiště i unit testy.

3. domácí úkol

Ve 3. úkolu si procvičíte práci se vstupem od uživatele. Tentokrát ale nebudete mít základní projekt připravený, ale bude to celé na vás. Projekt musí splňovat následující funkčnosti:

  1. Po startu program napíše text: "Zadavejte cisla, ktera chcete zohlednit ve statistikach:"
  2. Následně v programu počítejte, že uživatel zadá jednotlivá číslo (vždy stylem číslo a nový řátek nebo enter)
  3. Čísla načítejte, dokud uživatel nenapíše řetezec konec.
  4. Po zadání řetězce konec, vypíšete následující údaje: součet všech čísel, aritmetický průměr čísel, seznam čísel
  5. Další požadavky:
    1. Číslo půjde vložit jen 1x. Pokud uživatel zadá například 2x dvojku, program bude počítat pouze s jednou dvojkou.
    2. Pokud uživatel zadá cokoli jiného než číslo (v rozsahu int) nebo řetezec konec, program vypíše "Neplatný příkaz".

Příklad běhu programu

Zadavejte cisla, ktera chcete zohlednit ve statistikach:
1
2
5
2
8
9
konec
Soucet cisel je 25.
Prumer cisel je 5.0.
Zadana cisla jsou: 1, 2, 5, 8, 9

4. domácí úkol

Rozšiřte semestrální úlohu tak, že bude všechen vstup uživatele a výstup semestrálky ukládat do souboru. Cestu i název souboru si zvolte dle vlastního uvážení.

Zadání teoretických domácích úkolů

Referát

Téma referátu si vyberete v polovině semestru v odevzdávárně. Na sepsrání referátu budete mít čas do konce semestru.

Zadání semestrální práce

Projděte si požadavky na semestrální práci. Následně připravte zadání vlastní semestrální práce, které bude obsahovat:

  1. Příběh jak hra začíná, tj. uvedení do příběhu, co se stalo a co je hráčovým úkolem. Tento text pak budete hráči zobrazovat při spuštění hry.
  2. Plánek hry (obrázek), jaké prostory bude hra obsahovat a jak jsou propojeny.
  3. Popis toho, co bude muset hráč udělat, aby hru vyhrál. Případně také, co se stane, když některé úkoly nesplní (špatné konce hry).
  4. Seznam příkazů, které bude moci hráč při hře používat.

Odevzdejte jako soubor ve formátu pdf.

Předchozí semestry