Využite možnosť prekonzultovať zámery svojich projektov s vyučujúcimi na cvičeniach. Tu je opísaný rámcový postup na realizaáciu projektu, ktorý presahuje rámec tohto cvičenia. Zatiaľ ho preštudujute a do budúceho cvičenia sa uistite, že viete, na čo bude zameraný váš projekt, a že dokážete aj diagramaticky vyjadriť jeho podstatu, ako je vysvtlené ďalej.
Predstavte si, že sa váš program vykonáva a identifikujte jednu alebo viac typických situácií, ktoré pritom vznikajú. Zamyslíte sa nad tým, aké dôležité objekty sa v danej situácii vyskytujú. Aké vlastnosti majú tieto objekty? Nakreslite tieto objekty a spojte hranami tie objekty, medzi ktorými preedpokldáte interakciu. V tomto momente si nerobte starosti s triedami, ale dbajte na výstižne pomenovanie objektov. Na kreslenie takéhoto diagramu objektov môžete použiť nástroj UMLet. Pozrite príklad diagramu objektov pre hru s obrami a rytiermi, ktorý znázorňuje interakciu obra a rytiera (PDF/UXF), alebo ďalší diagram objektov, ktorý znázorňuje aj objekt stretu (PDF/UXF).
Objekty, ktoré ste identifikovali, možno zovšeobecniť, čím získate kľúčové triedy vášho programu. Názvy tried vyplývajú z názvov objektov. Vzťahy medzi triedami vyplývajú zo väzieb medzi objektmi. Na tejto úrovni sa môžete obmedziť na dva typy vzťahov: všeobecnú asociáciu a dedenie. Vlastnosti identifikovaných objektov predstavujú atribúty a metódy týchto tried. Na kreslenie takéhoto diagramu tried znovu môžete použiť nástroj UMLet. Pozrite príklad diagramu tried pre hru s obrami a rytiermi (PDF/UXF).
Vytvorte provizornú implementáciu identifikovaných tried (napíšte ich kód). Niektoré ich časti zostanú nejasné, ale ešte stále môžete z nich vytvoriť niekoľko objektov a vyskúšať funkcionalitu, ktorú poskytnete.
Funkcionalitu zatiaľ kontrolujte obyčajnými výpismi na štandardný výstup (pomocou print() alebo println()). Ak potrebujete vstup, môžete využiť štandardný vstup a výstup, v čom vám môže pomôcť príklad načítania vstupu z konzoly. Používateľské rozhranie rozpracujete neskôr. Už na ďalšej prednáške budeme hovoriť o grafickom používateľskom rozhraní.
Niektoré z tried možno budú vo vzťahu dedenia. Z niektorých tried možno nebudete chcieť povoliť tvorbu objektov – tie budú abstraktné. Už teraz možno identifikujete aj niektoré rozhrania.
Všetko môžete neskôr zmeniť, ale skúste sa už teraz povzniesť nad prosťé zabezpečenie želanej funkčnosti a pridajte flexibilitu uplatnením polymorfizmu. Váš program by mal byť otvorený pre rozšírenie bez nutnosti modifikácie základnej logiky. Podobný stav sme dosiahli v hre s obrami a rytiermi, kde, napriek rozšíreniam, metódu stret() triedy Stret tvorí slučka, ktorá tam bola už v prvej verzii kódu.
V CPU je dostupný nástroj na kreslenie UML a iných diagramov: UMLet. Nástroj môžete stiahnuť a inštalovať na vašich počítačoch. Dostupná je aj online verzia: UMLetino. Pri oboch nástrojoch dbajte na to, aby ste diagramy ukladali v editovateľnom formáte UXF, a nie iba ako obrázky alebo PDF súbory.
Prvky z palety vpravo vyberáte dvojitým kliknutím. Vybraný prvok následne môžete upravovať v poli pod paletou. V menu File máte možnosť diagram exportovať.