Mimo mail mě můžete najít na LinkedInu, Facebooku a jinde.
| Ú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.
Program cvičení je orientační a velmi optimistický. Je proto možné, že program 11. cvičení bude probíhat v náhradním termínu.
Sešit pro sdílení je zde.
| Týden výuky | Datum | Téma cvičení | Projekt | Poznámka |
|---|---|---|---|---|
| 1 | 13.2.2018 | Představení kurzu, seznámení s BlueJ, třída, instance | - | |
| 2 | 20.2.2018 | Zapouzdření objektů, přístupové metody k datovým atributům, datové typy, PMD | Kalkulačka | |
| 3 | 27.2.2018 | Rozhraní, základní algoritmické konstrukce | Zoo tycoon | Zadání 1. domácího úkolu |
| 4 | 6.3.2018 | Testování a ladění | Zoo tycoon II | 1. teoretický test |
| 5 | 13.3.2018 | Cykly, seznamy | Zoo tycoon III | Odevzdání 1. domácího úkolu, zadání 2. domácího úkolu |
| 6 | 20.3.2018 | Datové struktury (2. část) - hashCode, enum, obalové třídy primitivních typů | Zoo tycoon IV | |
| 7 | 27.3.2018 | Statické prvky třídy, metoda main, třída Math, třída System, Řětězce | Zoo tycoon V | Odevzdání 2. domácího úkolu |
| 8 | 3.4.2018 | Programovací test | Zadání testu | |
| 9 | 10.4.2018 | Představení semestrálního projektu, mapy | Zoo tycoon VI | Zadání 3. domácího úkolu |
| 10 | 17.4.2018 | Dědičnost, abstraktní třídy, třídění a vyhledávání (1. část) | Výsledek cvičení | Odevzdání 3. domácího úkolu, zadání 4. domácího úkolu |
| 11 | 24.4.2018 | Třídění a vyhledávání (2. část), práce se soubory | Zoo tycoon VII - Zoo tycoon final | 2. teoretický test |
| 12 | 10.5.2018 - náhradní termín | Java 8 features | Odevzdání 4. domácího úkolu | |
| - | 1.5.2018 | Cvičení odpadá | ||
| - | 8.5.2018 | Cvičení odpadá | ||
| - | řádné odevzdání do 20.5.2018 | Odevzdání semestrální práce | Semestrální práci je možné odevzdat i po tomto deadlinu, ale za každý započatý týden zpoždění je srážka 3 bodů. | |
Všechy domácí úkoly vypracovávejte samostatně. Jakákoli snaha o opisování bude po zásluze "odměněna".
Stáhněte se projekt.
Implementujte třídy Kalkulacka a BinarniKalkulacka tak, aby odpovídaly popisu nad třídou. Tzn. třída kalkulačka bude pracovat s čísly v desítkové soustavě, třída BinarniKalkulacka bude pracovat se vstupy v binární podobě. Obě třídy budou implementovat interface IKalkulacka. K oběma implementacím napište unit test (každá metoda by měla mít svůj).
Vzorové volání třídy Kalkulacka: secti(7, 2) - metoda vrátí 9, odecti(7, 2) - metoda vrátí 5, modulo(7, 2) - metoda vrátí 1...
Vzorové volání třídy BinarniKalkulacka: secti(100, 101) - metoda vrátí 1001, odecti(100, 11) - metoda vrátí 1, modulo(100, 11) - metoda vrátí 11...
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:
Odevzdejte jako soubor ve formátu pdf.
Do semestrální práce doplňte další dva příkazy - uloz a nacti. Příkaz uloz uloží všechny příkazy, které byly spuštěny během hry, do souboru. Příkaz nacti je pak ze souboru načte a spustí. Zájemci si pak mohou zkusit implementovat příkaz tak, aby jako parametr příkazu byla cesta k souboru (to však není povinné a k dosažení maximálního počtu bodů to není potřeba).
Tento domácí úkol se odevzdává současně se semestrální prací.