Zadání projektu

Cílem projektu je zábavnou formou si procvičit vývoj softwaru v jazyce Java.

Odevzdání projektu

Odevzdání a obhajoba projektu proběhne následovně:

  • Termín odevzdání (nahrání do systému edison) je do 22.12.2024.
  • Obhajoba proběhne osobně, ůstně v termínech na, které je nutno se přihlásit. Jsou vypsány v systému https://ees.cs.vsb.cz/subjects/727/exams.

Bodové hodnocení

Minimálně musí student získat 10 bodů maximálně pak může získat 25 bodů.

Zadání

Cílem projektu je vytvořid jednoduchou 2D hru v jazyce Java s využitím knihovny JavaFX. Hra bude implementovat jedno z níže uvedených témat (her), bude umožnovat uložení a načtení dat z a do souboru. Těmito daty mohou být například jedna možnost z:

  • Hráči a jejich hesla
  • Seznam nejlepších nahraných skóre a jména hráčů
  • Seznam her doby a délky jejich raní
  • Nastavení obtížnosti, klávesnice, úrovní, ...
  • Editor úrovní

Zásady pro vypracování

  • Projekt musí být v JavaFX ne ve starém swing a awt.
  • Při kódování dodržujte konvence pro psaní v jazyce Java https://www.oracle.com/technetwork/java/codeconventions-150003.pdf případně revidovaná verze  - https://www.scribd.com/doc/15884743/Java-Coding-Style-by-Achut-Reddy). Pro vše lze využít správně nastavené automatické formátování ve vašem IDE.
  • Hlavní pokyny k formátování:
    • Otevírací složená závorka vždy na konci řádku
    • Názvy identifikátorů (třídy, metody, proměnné) s využitím CamelCase
    • Názvy tříd začínají velkým písmenem
    • Názvy metod a proměnných začínají malým písmenem
    • Vaše IDE umí přejmenovat identifikátory (přídy, metody, proměnné) a všechny jejich výskity v kódu.
    • Příkaz za if nebo for vždy na následujícím řádku, nejlépe v bloku kódu, tedy složené závork
  • Statické metody a proměnné NEBUDOU používány s výjimkou pomocných funkcí a konstant - jejich použití konzultujte s cvičícím.
  • Projekt bude obsahovat použití rozhraní, kolekcí a práci s I/O "streamy".
  • S objekty se bude pracovat přes nejobecnější typ/rozhraní nikoliv přes konkrétní třídu.
  • Využijte dědičnost a rozhraní pro sjednocení fukcionality a znovuvyužití kódu. Grafické prvky se nabízejí k využití těchto přístupů.
  • Využíte více jak jednu scénu pro přepínání obrazovek hry.
  • Při tvorbě využijte debuger a breakpointy, je to velice silný pomocník.
  • V debug režimu umí IDE některé změny kódu okamžitě promítnout do aplikace bez nutnosti jejího restartování. Můžete také měnit hodnoty proměnných v paměti.
  • Čtěte vyjímky, pokud vám nenapoví začátek vyjímky, zkontrolujte zda není uvedeno Caused By <další vyjímka> (může se několikrát opakovat)
  • Povinnou součástí hodnocení projektu bude jeho obhajoba cvičícímu.
  • Projekt udělejte v rozsahu a kvalitě s ohledem na své schopnosti - důležitá je funkčnost nikoliv 100% dokonalost a shoda s originálem.
  • Knihovny použité při vývoji budou součástí odevzdaného projektu (jako závislosti maven) a nebudou vyžadovat žádná dodatečná nastavení. Nedodržení tohoto pravidla bude penalizováno jistým počtem bodu dle času, který byl nutný ke zprovoznění.

Témata / Hry

Na téma je nutno se přihlásit na https://ees.cs.vsb.cz/exams/728/blocks