2010-2011, II. félév
A zárthelyi során a beadandó feladat egy módosított változatát vesszük alapul. A szükséges fájlokat egyben megtaláljátok a mellékletek között, az első feladat az ömlesztett fájlok megfelelő struktúrába szervezése, a fordítási hibák kiszűrése.
A program tartalmaz apróbb hiányosságokat, hibákat; ezekből kell tetszőleges sorrendben implementálni, javítani az általatok kiválasztott feladatokat. Minden megoldás eggyel jobb érdemjegyet eredményez (az alább felsorolt csoportok szerint), amely helyességét (a mellékletben szintén megtalálható) media.test.MainTest tesztfájl biztosítja. A tesztfájlon módosítani szigorúan tilos.
A feladatok, érdemjegyek a következőképp alakulnak:
import utasítások okozzák)A feladatok egyszerűek, mindegyik megoldhaó 2-7 sorban, azonban feltételezik a használt fogalmak, eszközök mély ismeretét.
Az első feladat az, hogy szervezzétek a megfelelő csomaghierarchiába az osztályokat, fordítsátok a mellékelt projectet. Ez nem lesz olyan egyszerű, mert minden import utasítás törlésre került. Amennyiben ezzel elkészülsz, és hiba nélkül fordul a program, megvan az elégséges érdemjegy.
Három egyszerűbb feladat közül választhattok, ezekkel szerezhető maximum 4-es érdemjegy. Az implementációs részleteket a tesztfájlban megtaláljátok.
A használt media.data.Rating osztály összehasonlító függvényét valaki megírta, ám bizonyos esetekben nem várt működést produkál. Hiba van az implementációban, javítsd ki!
Szeretnénk egy olyan lekérdezéseket megfogalmazni a media.Media osztály segítségével, amely lehetővé teszi az átlagos értékelés értékének meghatározását (a kerekítésnél a szokásos szabályokat vedd figyelembe!)
Szeretnénk egy olyan szolgáltatást a media.Media osztályban, amely képes lecserélni a nem alfanumerikus karaktereket a címekben egy '_' karakterre.
Ötöst az kaphat, aki az eddigieket megcsinálta, és a következő két bonyolultabb feladat közül is megold legalább egyet:
A forráskódban található egy media.data.Comic osztály legyen a media.data.Newspaper osztály leszármazottja. Hogy ezt a funkciót a rendszer le tudja ellenőrizni, implementálnod kell a megadott statikus getDefaultCollection függvényt is (ez adjon vissza legalább egy tetszőleges, általad készített Comic példányt)!
Tedd klónozhatóvá az AMedia osztályt!