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

Kontakt

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

Bodování

Úkol Počet bodů Poznámka
Domácí úkoly 20 4 domácí úkoly po 5 bodech
Průběžné testy (teorie) 10 2 testy v Insis po 5 bodech
Test - programování 10 Doporučená příprava na test
Semestrální práce 30 Podrobnosti na stránkách předmětu.
Závěrečný test 30 Podrobnosti na stránkách předmětu.

V případě aktivity na cvičeních je možné získat bonusové body.

Harmonogram

Pro LS 2018/2019 bude brzy doplněn.

Projekt pro první cvičení

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).

Sešit pro sdílení promítaného kódu je zde.

Týden výuky Datum Téma cvičení Projekt Poznámka
1 20.9.2018 Představení kurzu, seznámení s BlueJ, třída, instance Řešení: zde -
2 4.10.2018 Zapouzdření objektů, přístupové metody k datovým atributům, datové typy, PMD Možné řešení: zde -
3 11.10.2018 Rozhraní, pole, základní algoritmické konstrukce Možné řešení: zde Zadání 1. domácího úkolu
4 18.10.2018 Testování a ladění Možné řešení: zde 1. teoretický test
5 25.10.2018 Cykly, kolekce (1. část) Možné řešení a projekt pro další cviko: zde Odevzdání 1. domácího úkolu, zadání 2. domácího úkolu
6 1.11.2018 Kolekce (2. část), hashCode, enum, obalové třídy primitivních typů Možné řešení: zde -
7 8.11.2018 Statické prvky třídy, metoda main, třída Math, třída System, Řětězce Možné řešení: zde Odevzdání 2. domácího úkolu
8 15.11.2018 Praktický test Zadání testu: zde< -
9 20.11.2018 od 18:00 v SB-202 Představení semestrálního projektu, mapy - Zadání 3. domácího úkolu
10 29.11.2018 Dědičnost, abstraktní třídy, třídění a vyhledávání (1. část) - odevzdání 3. domácího úkolu
11 6.12.2018 Třídění a vyhledávání (2. část), práce se soubory Soubor, Promítaný kód Zadání 4. domácího úkolu, 2. teoretický test
12 13.12.2018 Java 8 Projekt Odevzdání 4. domácího úkolu
- 31.12.2018 23:59:59 Odevzdání semestrální práce - -

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

1. domácí úkol

Projekt je ke stažení zde.

Vytvořte alespoň 2 třídy, které budou implementovat interface Vec (aktivite se meze nekladou, 2 jsou minimum ;-)). Každá třída musí mít kromě 2 povinných atributů (ty poznáte podle interface) alespoň další dva libovolné atributy. Pro všechny atrobuty vytvořte gettery a settery.

Implementujte metody ve třídě kufr - chování metod je popsáno v javadocu.

Ve třídě Program a metodě main otestuje správnou funkčnost tak, že vytvoříte instanci kufru, vložíte do něj alespoň 4 různé věci a zavoláte všechny metody ze třídy Kufr. Výsledky metod, které něco vrací, vypište na konzoli.

Úkol vypracujte samostatně a včas jej vložte do odevzdávárny v InSISu.

2. domácí úkol

Projekt je ke stažení zde.

Vaším úkolem je implementovat metody ze třídy Ohrada tak, aby jejich chování odpovídalo popisu v javadoc. Každá metoda pak musí být řádně otestovaná unit testem.

3. domácí úkol (Zadání semestrální práce)

Ve 3. domácím úkolu nebudete nic programovat. 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.

4. domácí úkol

Vaším úkolem je implementovat program, který načte libovolný textový soubor a všechny jeho znaky převede na velká písmena. Chování po spuštění bude následující:

  1. Po spuštění program vypíše do konzole text: "Zadejte cestu k souboru:"
  2. Uživatel zadá absolutní cestu k souboru
  3. Program načte soubor a převede všechny znaky na velké (stačí řešit jen znaky z ASCII)
  4. Nový soubor bude uložen na stejné místo se steným název, ale s příponou CONVERTED. Příklad: Původní soubor se jmenu text.txt - nový soubor se bude jmenovat text-CONVERTED.txt
  5. Program končí

Předchozí semestry