4IT101 Programování v Javě - cvičící Tomáš Michalička LS 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

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 12.2.2019 Představení kurzu, seznámení s BlueJ, třída, instance, primitivní datové typy, metody, první aplikace - -
2 19.2.2019 Zapouzdření objektů, jmenné konvence, modifikátory přístupu, PMD projekt -
3 26.2.2019 Rozhraní, pole, základní algoritmické konstrukce - Zadání 1. domácího úkolu
4 5.3.2019 Testování a ladění - 1. teoretický test
5 12.3.2019 Cykly, kolekce (1. část) projekt, promítaný kód Odevzdání 1. domácího úkolu, zadání 2. domácího úkolu
6 19.3.2019 IntelliJ IDEA, kolekce (2. část), hashCode, enum, obalové třídy primitivních typů Testové závislosti -
7 26.3.2019 Statické prvky třídy, metoda main, třída Math, třída System, Řětězce - Odevzdání 2. domácího úkolu
8 2.4.2019 Praktický test Zadání testu -
9 9.4.2019 Představení semestrálního projektu, mapy - Zadání 3. domácího úkolu
10 16.4.2019 Dědičnost, abstraktní třídy, třídění a vyhledávání (1. část) - odevzdání 3. domácího úkolu
11 23.4.2019 Třídění a vyhledávání (2. část), práce se soubory - Zadání 4. domácího úkolu, 2. teoretický test
12 30.4.2019 Java 8 - Odevzdání 4. domácího úkolu
13 7.5.2019 rezerva/téma na přání - -
- 15.5.2019 23:59:59 Odevzdání semestrální práce - -

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

1. domácí úkol

Vaším domácím úkolem je implementovat následující třídy v tomto projektu:

Třída Auto bude mít následující parametry (správné určení datového typu je součástí úlohy):

Při implementaci třídy nezapomeňte na to, co jsme si na cvičení říkali o zapouzdření.

Ve třídě Parkoviste je volba třídních atributů na Vás. Musí zde být ale implementovány metody, které jsou v projektu označeny jako TODO. Kapacita parkoviště jsou 3 auta.

Nakonec implementujte main metodu ve třídě SimulatorParkoviste podle komentářů uvnitř metody. Otestujete tak, že úkol funguje tak, jak očekáváte.

Domácí úkol vypracovávejte samostatně a nezapomeňte jej včas odevzdat do příslušné odevzdávárny v InSISu. Pozdě odevzdané úkoly nebudou hodnoceny.

2. domácí úkol

Stáhněte si projekt. Najdete v něm interface Kosik. Vytvořte 2 implementace - NeomezenyKosik a MalyKosik.

Třída NeomezenyKosik musí splňovat následující kritéria:

Třída MalyKosik musí splňovat následující kritéria:

Každou metodu obou košíků otestujte 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

Zadání bude včas doplněno. Řešení z minulých let není potřeba shánět, bude úplně jiné. :-)

Předchozí semestry