Talk:Tab

From ICO wiki
Jump to navigationJump to search

XML andmefaili retsensioon meeskonna Taandarendajad poolt

Esmalt sai kontrollitud XML koodi W3 validaatoriga ning kõik oli korras. Meeskond on loonud nõutud arvu dimensioone. Täpselt kolmel elemendil on kasutatud unikaalseid atribuute, mis on enamat kui ID. Sellest ei saa täpselt aru, miks on loojaId eraldi element, kui ta võiks olla looja elemendi atribuut. Elementide info on kenasti pandud kõik CDATA vahele. Samuti tundub, et XSD failiga on kõik korras ning igal elemendil ja atribuudil on õiged andmetüübid.

Esimese transformatsiooni faili juures on kasutatud edukalt atribuuti privaatne, mis kuvab false väärtuse korral toa html koodis. Teises transformatsiooni failis on korrektselt loodud tabel kahe tulbaga. Kolmandas failis luuakse edukalt uus XML fail.Peale struktuuri muutmist on veel kokku loetud kasutajate arv ning see eraldi elemendina edastatud.

Kokkuvõttes on meeskond Tab lahendanud esimese ülesande väga oskuslikult. Hea oli näha, et oli ka transformatsiooniga loodud uus XML fail, sest tunnis me seda osa läbi töötada ei jõudnud. Esialgse XML faili maht oli hea ning kõik kriteeriumid said ka neil täidetud.


Veebiteenuse retsensioon meeskonna Taandarendajad poolt

Lisaks Identity mudelitele on meeskond loonud 4 tükki veel ise. Mis kohe silma hakkab on see, et kõik atribuudid algavad väikese algustähega. See ei ole väga suur viga ma usun, aga visual studio ise ka karjub iga rea peal, et atribuudid peaks algama suure algustähega. Ära on ise määratud isegi primary key-d ja foreign key-d. See on väga tore, aga entity framework peaks ise ka sellega hästi toime tulema. Hea on näha, et kõikide stringide pikkused on ka ära piiratud. Meeskond on ka oma kasutaja mudeli teinud lisaks Identity omale. See on arvatavasti tingitud sellest, et me ei saanud teise aine raames väga head ülevaadet sellest Identity projektist, et seda täielikult ära kasutada. Kokkuvõttes on mudelid põhjalikud ning hästi läbi mõeldud.

DataBaseContexti vaadates tunnen kohe ära, et meeskond on sama probleemi otsa sattunud nagu mina ise. Nimelt mitmete foreign key kasutamisel tekkis selline olukord, kus ühe sissekirje kustutamisel tabelist oleks mujalt tabelitest ka info kaduma läinud. Selle vastu aitas WillCascadeOnDelete väärtuse muutmine false-iks. Hea on ka näha seda, et samas failis toimub administraatori kasutaja loomine. Meeskond on kasutanud interface-e, reposid ja uow-d, nagu nõutud oli.

Veebiteenuse juures on ka kasutusele võetud BLL projekt, kuhu on kogu äriloogika paigutatud. DTO-d on huvitavalt tehtud. Iga mudeli jaoks on kaks DTO-d, kus üks tuleb ilma virtuaalsete listideta ja teine koos nendega. Kahju on näha, et service kaustas on tegeletud ainult tervete andmebaasitabelite tagastamisegal. Ei toimu mitte mingit sorteerimist. Väikese mahuga andmebaasiga pole sellest hullu, aga kui tegemist oleks mingi väga populaarse teenusega, siis muutuks päringute tegemine väga aeglaseks. Sellist sorteerimist oleks tahtnud näha DAL-is, aga seal ei olnud mitte ühtegi custom meetodit.

Web API-st on näha, et ninject on ka kasutusele võetud nii nagu peab. Kontrollerites on näha, et igal pool on korrektselt ühendus loodud UoW-ga, mitte otse andmebaasiga. Siin on valdavalt näha ainult crud meetodeid ja igas kontrolleris on üks custom meetod, mis tagastab kõik kirjed andmebaasist. Oleks tahtnud näha veidi keerulisemaid meetodeid. Meeskond on ränka vaeva näinud hea BLL-i loomisega, aga crud meetodites tagastatakse ikka ainult domainis loodud mudeleid. Tekib küsimus, et mille jaoks siis üldse BLL loodud sai.

Kokkuvõttes on veebiteenuse loomisega hästi hakkama saadud. Domain on hästi loodud, arendusmustreid on järgitud, BLL on olemas ja toimib. Arvatavasti on mõndade asjade puudumine põhjendatud sellega, et lihtsalt tekkis ajapuudus semestri lõpus. Hea töö!