Cvičenie 7 - Návrhové vzory I

Cieľom siedmeho cvičenia je precvičiť si použitie konštrukčných a štrukturálnych návrhových vzorov. Názvy a typ premenných a metód sú zapísané v UML notácii.

Úlohy

Úloha 7.1

Vytvorte triedu Obrazovka a implementujte pre ňu Singleton vzor.

Úloha 7.2

Vytvorte rozhranie Data s metódou data(): byte[]. Vytvorte dve triedy MaleData a VelkeData implementujúce rozhranie Data. Implementujte vzor Factory tak aby sa pre zadanú veľkosť do 100 bytov vytvorili malé dáta a nad 100 veľké.

Úloha 7.3

Vytvorte triedu Kalendar a Mesiac. Trieda Mesiac nech má atribúty cislo: int a nazov: String. V triede Kalendar implementujte vzor Lazy inicialization pre všetky mesiace v roku.

Úloha 7.4

Vytvorte triedu WebovyKlient pre ktorý naimplementujte vzor Object pool s maximálnou kapacitou 10 klientov.

Úloha 7.5

Pre nasledujúce triedy naimplementujte vzor Builder, ktorý zostaví a vráti zložený výraz. Vytvorte triedu Program s metódou main v ktorej vytvorte pomocou vzoru Builder výraz 10 - 3 + 10 * x.

Úloha 7.6

Vytvorte anotácie Test bez parametrov a Verzia s parametrami cislo: int a autor: String. Vytvorte triedu Program s metódou vypocitaj(): void. Triedu anotujte s anotáciou Verzia a metódu s anotáciou Test a Verzia.

Úloha 7.7

Naprogramujte vzor Adapter pre nasledujúce očakávané rozhranie a adaptovanú triedu.