You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Ensimmäisenä huomiona arviotani aloittaessani oli sovelluksen toimivuus. Kääntelypeli0.0.1.jar sovellus ei avautunut fuksiläppärini Java 11-ympäristössä, eikä myöskään etäyhteyden kautta virtuaalityösasemassa. Myöskään koodin ajaminen Java 8 -ympäristössä Netbeans 8.2 with TMC:llä ei käynnistänyt sovellusta. Onnellinen loppu kuitenkin seurasi, kun generoin suoritettavan jarin, ja sain sovelluksen käynnistymään. Tähän huomiona, että kannattaa vielä varmistaa generoidun jarin toimivuus virtuaalityöasemassa, jos et näin ollut jo tehnyt.
Koodin laatu
Välihuomautuksena, että katselmoija on kokematon ohjelmoija, joten tämä on myös hyvä lukijan pitää mielessä miettiessään annettuja arvioita tai kehitysehdotuksia.
Koodi oli kauttaaltaan kaunista ja noudatti OhPessa ja OhJassa opittuja hyviä käytänteitä. Luokat, metodit, attribuutit, parametrit ja muuttujat olivat selkeästi nimettyinä. Luokkien kohdalla oli käytetty Isoja alkukirjaimia ja yleisesti käytössä oli oikeaoppisesti camelcase-tyyli. Harjoitustyön ohjeiden mukaisesti kaikki nimettävä oli nimetty englanniksi.
Checkstyle ilmoitti virheen liian pitkästä metodista Level-luokassa koskien public void gravitate metodia alkaen riviltä 91. Sanoisin itse, että tuo voisi lukijan näkökulmasta tuossa olla tuollaisenaan, sillä kyseessä on selkeä metodi switch casella. Lukija saa metodista selvää, eikä 20 rivin sääntö ole mikään absoluuttinen tutkittuun tietoon perustuva rigidi raja-arvo. Mikäli tuota haluaisi muuttaa, jollain tapaa, voisi tapauksista tehdä omat metodinsa.
Katselmoija ei havainnut koodissa copy-pastea, josta olisi huomautettavaa. Ei siis toistuvuutta, joka vaatisi yliluokkaa tms.
Mitä tulee siihen, että luokka hoitaa vain yhtä asiaa, niin koodissa ei ole selkeästi erotettu graafista käyttöliittymää muusta logiikasta. JavaFX:iä käytetään molemmissa käyttöliittymän ulkopuolisissa luokissa. Katselmoija ei itse ole JavaFX-spesialisti, mutta olisikohan kaikki tuohon liittyvä mahdollista sijoittaa käyttöliittymän sisältäävään pakkaukseen?
Pakkaukset ovat muodollisesti tehty oikeaoppisesti eli default-pakkausta ei ole ja pakkaukset on nimetty asianmukaisesti ja asianmukaisella tyylillä. Tässä viittaan kehitysehdotuksen edelliseen kappaleeseen, mitä tulee eri toimintojen sijoittamisesta eri pakkauksiin.
Testien osalta työn ohjeistuksessakin oli, ettei käyttöliittymälle tarvitse tehdä testejä. Tästä syystä en ota kantaa käyttöliittymälle tehtyihin testeihin. Tässä ehkä ilmenee juurikin edellä mainittu käyttöliittymän vieminen käyttöliittymälogiikan sisältävän pakkauksen ulkopuolelle, jolloin käyttöliittymän testauksen ulkopuolelle jättäminen ei ole mielekästä.
Sinänsä testit näyttivät pintapuolisesti oikeaoppisilta – tosin tässä vaiheessa ei vielä kovin kattavasti, mutta aikaahan on – ja oikein nimetyiltä.
Muutosehdotuksia
Jo aiemmin mainittuina ovat erään metodin lyhentäminen ja käyttöliittymän ja sovelluslogiikan eristäminen toisistaan. Minulle oli jo ensimmäinen level oli haasteellinen, enkä usko, että sitä pääse läpi lainkaan, joten pelattavuuden säätäminen yleisesti on varmasti vielä asia, johon kannattaa kiinnittää huomoita.
Loppusanat
Katselmoitavan idea pelistä on oikein mainio ja on mielenkiintoista nähdä mihin se johtaa! Katselmoitava on myös selkeästi sisäistänyt selkeän ja hyvän koodin kirjoittamisen jalon taidon. Lisäksi katselmoitavalla on selkeästi hiukan enemmän kokemusta JavaFX:istä, koska hän on lähtenyt viemään asioita pidemmälle, mitä esimerkiksi Ohjassa on opittu. Muutoinkin vaikuttaa katselmoitavan olevan hiukan jo kokeneempi ohjelmoija.
Huolimatta alkuvaikeuksista liittyen sovelluksen käynnistämiseen, jäi minulle oikein positiivinen kuva katselmoitavan työstä. Tässähän vielä reilusti aikaa ennen loppupalautusta hioa koodia, joten uskon työstä tuleven oikein mainion. Paljon tsemppiä loppupuristukseen!
The text was updated successfully, but these errors were encountered:
Perehdyn tuohon .jar ongelmaan. Luulen että se liittyy siihen että olen kääntänyt "geneerisen" .jar:in MacOS:llä enkä linuxilla.
Käyttöliittymän erottelua muusta ohjelmalogiikasta voisi kyllä parantaa.
Pelattavuuteen todennäköisesti tulee parannusta kunhan lisään spritet; antaessani yhden kaverin pelata tuli huomattua että ensimmäisessä tasossa se että eräs palikka on "avain" ja tietty palikka seinässä toimii ovena ei ole selkeää pelaajalle.
Kloonattu 4.12.2019 klo 2235
Sovelluksesta
Ensimmäisenä huomiona arviotani aloittaessani oli sovelluksen toimivuus. Kääntelypeli0.0.1.jar sovellus ei avautunut fuksiläppärini Java 11-ympäristössä, eikä myöskään etäyhteyden kautta virtuaalityösasemassa. Myöskään koodin ajaminen Java 8 -ympäristössä Netbeans 8.2 with TMC:llä ei käynnistänyt sovellusta. Onnellinen loppu kuitenkin seurasi, kun generoin suoritettavan jarin, ja sain sovelluksen käynnistymään. Tähän huomiona, että kannattaa vielä varmistaa generoidun jarin toimivuus virtuaalityöasemassa, jos et näin ollut jo tehnyt.
Koodin laatu
Välihuomautuksena, että katselmoija on kokematon ohjelmoija, joten tämä on myös hyvä lukijan pitää mielessä miettiessään annettuja arvioita tai kehitysehdotuksia.
Koodi oli kauttaaltaan kaunista ja noudatti OhPessa ja OhJassa opittuja hyviä käytänteitä. Luokat, metodit, attribuutit, parametrit ja muuttujat olivat selkeästi nimettyinä. Luokkien kohdalla oli käytetty Isoja alkukirjaimia ja yleisesti käytössä oli oikeaoppisesti camelcase-tyyli. Harjoitustyön ohjeiden mukaisesti kaikki nimettävä oli nimetty englanniksi.
Checkstyle ilmoitti virheen liian pitkästä metodista Level-luokassa koskien public void gravitate metodia alkaen riviltä 91. Sanoisin itse, että tuo voisi lukijan näkökulmasta tuossa olla tuollaisenaan, sillä kyseessä on selkeä metodi switch casella. Lukija saa metodista selvää, eikä 20 rivin sääntö ole mikään absoluuttinen tutkittuun tietoon perustuva rigidi raja-arvo. Mikäli tuota haluaisi muuttaa, jollain tapaa, voisi tapauksista tehdä omat metodinsa.
Katselmoija ei havainnut koodissa copy-pastea, josta olisi huomautettavaa. Ei siis toistuvuutta, joka vaatisi yliluokkaa tms.
Mitä tulee siihen, että luokka hoitaa vain yhtä asiaa, niin koodissa ei ole selkeästi erotettu graafista käyttöliittymää muusta logiikasta. JavaFX:iä käytetään molemmissa käyttöliittymän ulkopuolisissa luokissa. Katselmoija ei itse ole JavaFX-spesialisti, mutta olisikohan kaikki tuohon liittyvä mahdollista sijoittaa käyttöliittymän sisältäävään pakkaukseen?
Pakkaukset ovat muodollisesti tehty oikeaoppisesti eli default-pakkausta ei ole ja pakkaukset on nimetty asianmukaisesti ja asianmukaisella tyylillä. Tässä viittaan kehitysehdotuksen edelliseen kappaleeseen, mitä tulee eri toimintojen sijoittamisesta eri pakkauksiin.
Testien osalta työn ohjeistuksessakin oli, ettei käyttöliittymälle tarvitse tehdä testejä. Tästä syystä en ota kantaa käyttöliittymälle tehtyihin testeihin. Tässä ehkä ilmenee juurikin edellä mainittu käyttöliittymän vieminen käyttöliittymälogiikan sisältävän pakkauksen ulkopuolelle, jolloin käyttöliittymän testauksen ulkopuolelle jättäminen ei ole mielekästä.
Sinänsä testit näyttivät pintapuolisesti oikeaoppisilta – tosin tässä vaiheessa ei vielä kovin kattavasti, mutta aikaahan on – ja oikein nimetyiltä.
Muutosehdotuksia
Jo aiemmin mainittuina ovat erään metodin lyhentäminen ja käyttöliittymän ja sovelluslogiikan eristäminen toisistaan. Minulle oli jo ensimmäinen level oli haasteellinen, enkä usko, että sitä pääse läpi lainkaan, joten pelattavuuden säätäminen yleisesti on varmasti vielä asia, johon kannattaa kiinnittää huomoita.
Loppusanat
Katselmoitavan idea pelistä on oikein mainio ja on mielenkiintoista nähdä mihin se johtaa! Katselmoitava on myös selkeästi sisäistänyt selkeän ja hyvän koodin kirjoittamisen jalon taidon. Lisäksi katselmoitavalla on selkeästi hiukan enemmän kokemusta JavaFX:istä, koska hän on lähtenyt viemään asioita pidemmälle, mitä esimerkiksi Ohjassa on opittu. Muutoinkin vaikuttaa katselmoitavan olevan hiukan jo kokeneempi ohjelmoija.
Huolimatta alkuvaikeuksista liittyen sovelluksen käynnistämiseen, jäi minulle oikein positiivinen kuva katselmoitavan työstä. Tässähän vielä reilusti aikaa ennen loppupalautusta hioa koodia, joten uskon työstä tuleven oikein mainion. Paljon tsemppiä loppupuristukseen!
The text was updated successfully, but these errors were encountered: