Open JuhoPaananen opened 1 year ago
Kiitos hyvistä huomioista! Näistä on jo paljon iloa. Mido pitäisi saada toimimaan poetry install -komennolla esim. VSCoden komentorivillä, mikäli haluat vielä kokeilla ohjelman käytännön toiminnallisuuksia.
Kirjaston toimimattomuuskin on joka tapauksessa hyvä huomio, joka minun pitää ratkaista käyttöohjetta varten.
Vertaisarviointi
Repositio kloonattu 16.6 klo 11:52
Yleistä
Erittäin mielenkiintoinen projekti ja tekeminen vaikuttaa olevan hyvällä mallilla. En saanut ajettua itse koodia, koska se herjaa mido moduulin puuttumisesta. Kommentoin/katselmoin projektia lähinnä koodin kannalta, koska tuo musikaalinen maailma menee itseltä vähän ohi :) Markovin ketjuihin ja Trie rakenteeseen tutustuin joka tapauksessa hieman, jotta ymmärtäisin mistä tässä on kyse. Pahoittelut, että arviointi tulee näin myöhään, jolloin et ehdi huomioimaan siinä esiin nostettuja asioita vielä tämän viikon palautuksessa.
Koodikatselmointi / kehitysehdotukset
Modulaarisuuden kehittäminen: main.py luokassa olevat sävelmän luonti voisi olla oma funktionsa esim. trie-moduulissa tai kokonaan omassa moduulissa. Tällöin se olisi uudelleenkäytettävissä ja helpommin testattavissa. Samoin myös koulutukselle voisi olla omat funktionsa.
Virheenkäsittely: Sikäli kun ymmärrän trie-puun toimintaa, niin get-metodi mahdollistaa virheellisen avaimen antamisen, jonka tuloksena get-metodi voisi palauttaa tyhjän puun. Nyt olet jo varmistanut, että avaimen pituus on oltava sallituissa rajoissa, mutta oikean mittainen puusta löytymätön avain mahdollistaa ymmärtääkseni vielä edellä mainitun tilanteen. Jos tämä on virheellinen päätelmä (vajaavainen ymmärrykseni toiminnasta), niin sivuuta kommentti.
Sävelmän luonti ja tehokkuus: main.py sävelmää luodessa get-metodia kutsutaan useita kertoja. Toimisiko tämä myös siten, että get-metodia kutsuttaisiin kerran ja sen palautusarvo tallennettaisiin muuttujaan, josta random.choicesia voitaisiin hakea? Jos tämä on mahdollista, niin koodi tehostuisi tältä osin.
Koodin kommentointi: Koodi oli jo kommentoitua, mutta täysin aihetta entuudestaan tuntemattomalle, koodi olisi voinut olla vielä kattavammin/yksityiskohtaisemmin kommentoitu, jolloin sen toiminnasta saisi helpommin kokonaiskuvan. Ennen kaikkea Trie on jokseenkin monimutkainen uusi tietorakennetuttavuus ja sen toimintaa voisi kommentoida enenmmän.
Kiitos mahdollisuudesta tutustua tähän mielenkiintoiseen projektiin ja tsemppiä viimeisille viikoille, tästä tulee loistava!