Talk:Meeskond "pöial"

From ICO wiki

Analüüsi retsensioon

Meeskond „pöial“ , koosseisus Stenn Mäeots, Priit Aarma, Paul Niidas ja Kert Treikelder, on aine programmeerimine C# keeles projekti eesmärgiks võtnud XNA platvormil baseeruva kaardimängu Blackjack koostamise. Oma analüüsis on nad välja toonud traditsioonilise kaardimängu lühikirjelduse, iseloomustanud tööprotsessi ning üles loetlenud must have ja nice to have funktsionaalsused.

Kriitikana analüüsile tuleb mainida, et analüüs on rohkem kui kaks korda nõutavast lühem. Lisaks trükivead ja ingliskeelsete terminite vaba kasutamine eestikeelses tekstis viitab kiirustamisele ja/või hooletule suhtumisele. Analüüsi lühidusest tulenevalt on ka sisulisi puudujääke. Hetkel jääb selgusetuks, mis põhjustel on just selline projekt valitud, mille poolest erineb see juba väga paljudest olemasolevatest Blackjack mängudest ning kes on potentsiaalne kasutaja. Ehk küsimus on, mis on meeskonna „pöial“ eesmärgiks seesuguse projekti elluviimisel.

Projekti nõutele vastavust hinnates saab positiivse poole pealt välja tuua must have funktsionaalsuse all märgitud Xbox puldi ja klaviatuuriga juhtimise tuge ning punktiarvestuse rollis on arusaadavalt raha teenimine ja kaotamine. Paraku jääb arusaamatuks, milles väljenduvad erinevad tasemed. Kas erinevate vastastega mängimine kvalifitseerub erinevate tasemete alla? Lisanõuete alla kuuluva mängu orginaalsuse osas sai juba varem küsimus püstitatud.

Kokkuvõtvalt, meeskond „pöial“ plaanib Blackjack kaardimängu loomist ning analüüsis on nad kirjeldanud eesootavat tööprotsessi ning loetlenud loodava mängu funktsionaalsused. Liiga lühikese analüüsi tõttu jääb arusaamatuks konkreetse ülesande valimise põhjus ja eesmärk. Samuti on küsitav, kas kõik projekti nõuded on täidetud.

Retsenseeris meeskond ITK Life

Prototüübi retsensioon

Meeskond “pöial“ on tähtaegselt esitanud kaardimängu BlackJack prototüübi. Lisaks on esitatud published versioon. Prototüübina on esitatud vigadeta toimiv kaardimäng. Mängijale ja diilerile jagatakse kaks kaarti. Tühikut vajutades saab mängija kaardi juurde võtta ning „Stand“ nupule vajutades saab mängija kaartide juurdevõtmisest loobuda, mille järel mängijat teavitatakse mängu tulemusest. Järgmise mängu alustamiseks tuleb vajutada nupule „Uuesti“. Võrreldes tehtut must have funktsionaalsuste nimekirjaga, on realiseeritud vigadeta töötav mäng ja klaviatuuriga juhtimine. Puuduvad näiteks start menüü, raha-/punktisüsteem, erinevad vastased ja kasutajanime loomise võimalus.

Mäng iseenesest toimib kenasti. Kasutaja seisukohast oleks mõistlik, kui mängida saaks kas ainult klaviatuuri või ainult hiire abil. Hetkel saab kaarte juurde vaid klaviatuuril tühikut vajutades ning mängu uuesti alustada ja passida vaid hiire abil. Hea stiil oleks mängus kasutada ka vaid eesti või inglise keelt.

Koodi kirjutamisel on korralikult kasutatud klasse, mis on omakorda kaustadesse jagatud. Võimalike täiustamiskohtadena saab välja tuua kaks punkti. Esiteks klassid DealerCard ja PlayerCard on sisult samad, erinedes vaid joonistamise asukoha poolest. Seega võiks mõelda baasklassi kasutamise peale. Teiseks on klasside PlayerLoogika ja WhoWinTurnDraw if-else lausetes märkimisväärne kogus sama koodi korduvalt välja kirjutatud. Parem oleks kasutada mingit meetodit nende välja kutsumiseks.

Retsenseeris meeskond ITK Life


Lõpptoote retsensioon

Meeskonna „pöial“ poolt realiseeritud projektiks on kaardimäng BlackJack. Edasiminek võrreldes prototüübiga on märgatav ning mäng on üldjoontes toimiv. Lähtudes kodutööle esitatud nõuetest on mängust puudu vaid erinevad tasemed. Analüüsi must have sektsioonis välja toodud funktsionaalsused on samuti realiseeritud, kuid peab mainima, et võrreldes esialgse analüüsiga on ka vastav nimekiri mõnevõrra muutunud. Seejuures ei ole mäng ka täielikult vigadeta – mitmel korral võis ligi pool minutit lillat ekraani näha enne, kui mängupilt jälle taastus.

Mängu kasutajaliidesega muid tõsisemaid probleeme enam pole, paranadatud on ka prototüübi puhul välja toodud ebamugavus - hiire ja klaviatuuriga läbisegi juhtimine. Küsitav on, kas see, et panust tegemata on võimalik mängida, on taotuslik. Detailidesse laskudes võib veel välja tuua asjaolu, et panustamisel muutuvad näiliselt aktiivseks alati kõik nupud, vaatamata sellele, et mõni panus on lubamatult suur, seda tegelikult valida ei saa ja nupule vajutamisel ka midagi ei juhtu. Paraku pole arvesse võetud prototüübile tehtud kriitikat eesti ja inglise keele koos kasutamise kohta.

Ka koodi poole pealt on juba prototüübile tehtud märkused (nt klassid DealerCard ja PlayerCard ning koodi kordumine) parandamata. Lisaks neile saab välja tuua veel alljärgnevad momendid:

1) Buttons võiks olla lahendatud baasklassi/pärilusega, selle asemel, et iga žetooni väärtuse jaoks eraldi klass teha ja enamikku koodi kopeerida.

2) Mittemuutuvate asukohtadega nuppude asukohti ei ole vaja iga update’i puhul uuendada.

4) Kõik muutujad on public static, ehk põhimõtteliselt objetke ei kasutata.

5) Koodi loogikast on keeruline aru saada, kuna meetodeid kasutatakse vähe ja on palju korduvat koodi.

6) LoadGame meetodis (Salvestamine.cs klassis) on küsitav for-tsükli eesmärk. Parimate tulemuste salvestamisega seoses oleks võinud lihtsalt tekstifaili kirjutamise asemel serialiseerimist kasutada.

Et positiivse noodiga lõpetada, siis klassis Misc on hästi kasutatud enumit ning tore, et projekt on valmis tehtud ning põhimõtteliselt on tegemist töötava mänguga.

Retsenseeris meeskond ITK Life

Lõpptoote retsensioon

Meeskond "pöial" tegid valmis blackjacki kaartimängu XNA platvormil. Must have funktsioonidest tundus enamuses olemas olevat, kahjuks ei olnud võimalik puldiga asja testida. Klaviatuuri ja hiirega töötas asi igastahes mugavalt ja probleemivabalt. Mäng töötas testimisel probleemivabalt. Küll leidsin loogikavigu kust saaks mängu parendada.

  • Maksimaalselt võimalik käes olla 6 kaarti. Ilmselt väike probleem, kuid siiski tekib olukordi kus on vaja võimaldada rohkemat kui 6-te kaarti.
  • Mängija ja diileri kaarte arvestatakse eraldi. See toob kaasa, et mängijal ja diileril võib korraga käes olla "sama" kaart.
  • Diiler võtab aegaajalt ebavajalikke kaarte juurde. Näiteks kui kasutaja on lõhki, võtab diiler ikkagi kaarte juurde kui tema käes on vähe punkte. Mängija poolt vaadatuna on see hea, kuid "kasiino" poolt vaadatuna kindlasti kahjulik.
  • High score viga. Paari katsetamise järel olid parimad tulemused segamini.(Näitena olid minul 800, 550, 400, 550, 100)

Retsenseeris meeskond WizERD