Giter Site home page Giter Site logo

training-planner's People

Contributors

perander avatar

Watchers

 avatar  avatar

training-planner's Issues

Koodikatselmointi

Koodikatselmointi

Latasin projektin 25.4.2020 18:51.

Yleiskuva

Projekti on hyvässä vaiheessa ja siinä on paljon koodia. Sovellus on pitkällä. Koodin seassa oli paljon todoja mutta ne näyttivät olevan pieniä asioita. Koodi oli selkeää ja muuttujat olivat hyvin nimettyjä.

Validointi

Validointia on käytetty projektissa asianmukaisesti. Melkein kaikki lomakkeet validoidaan. MultiCheckboxFieldin kanssa taisi olla ongelmia, mutta se ei ole iso ongelma.

HTML-koodi ja tyylit

Olet käyttänyt ohjeiden mukaisesti Bootstrappia. Lomakkeet näyttävät ihan hyviltä taulukkoihin tehtynäkin. Olisin toivonut että käyttäisit myös taulukoihin ja lomakkeisiin Bootstrappia. Jos jää aikaa niin voisit harkita sitä. Sinulla on taulukoita joissa on vain yksi sarake, mutta ne näyttävät hyviltä sellaisinaan.
HTML-koodi näyttää hyvältä ja elementtejä on käytetty asianmukaisesti.

Sovellus ja käytettävyys

Sovelluksen toiminta vaikutti aluksi monimutkaiselta. Johtuu varmaan siitä että en ole kovin hyvä englannissa. Nettisivuilla voisi olla enemmän tekstiä selittämässä mitä sivujen tarkoitus on. Tekijälle ja sovellusta käyttäneille on kuitenkin selkeää aina mitä milläkin sivulla tehdään. Uusille käyttäjille sovellus ei ole kovin ystävällinen.
Hakutoiminnallisuuden voisi toteuttaa siten että isoilla ja pienillä kirjaimilla ei olisi väliä, ja osa sanasta riittäisi oikeaan tulokseen. Tätä varten pitäisi tehdä pienia muokkauksia hakemisen toteutukseen.

Tietokanta

Tietokannan kuvaus vastaa koodissa olevaa tietokantaa. Itse olisin varmaan tehnyt kaikille käyttäjille omat tehtävät ja jokaisella tehtävällä olisi oma tieto statuksesta (kesken, valmis). Olisi ollut vähemmän tietokantatauluja. Se ei kuitenkaan ole samaan tarkoitukseen.
Nykyisessä mallissa on teoriassa mahdollista että käyttäjällä on tehtävä sekä kesken että valmis. Tämän estetään kuitenkin sovelluksen puolelta.

Lopuksi

Sovellus on hyvässä mallissa. Vielä pitää viimeistellä ja katsoa mitä kaikkea ehtisi tehdä ennen loppupalautusta. Olet hienosti saanut erittäin paljon koodattua.

Koodikatselmointi

Koodikatselmointi

Projekti ladattu 4.4.2020 klo 19.50

Loin ensin tunnuksen peruskäyttäjänä, kirjauduin sisään ja kokeilin eri toimintoja:

  • Käyttäjän rekisteröityminen, kirjautuminen ja tehtävien merkitseminen toimivat kuten dokumentoinnissa on määritelty. Myös tilastotiedot kaikkien käyttäjien suorittamista ja suorituksessa olevista tehtävistä toimivat kuten pitääkin.

  • Tehtäviä on myös helppo selata kategorioittain. On kätevää, että tehtävien kategorioihin on linkit myös tehtävän sivulla, mutta ne voisivat olla selkeämmin merkitty juuri kategorioiden linkeiksi. Myös tehtävien hakeminen hakusanoilla toimi hyvin, mutta hakua voisi vielä parantaa siten, että se toimisi vain osittaisella nimellä eikä tekisi eroa isojen ja pienten kirjainten välillä.

  • Mietin, voisiko käyttäjälle antaa mahdollisuuden merkitä jo tehdyksi merkattu tehtävä tekemättömäksi? Tämä olisi siltä varalta, että käyttäjä tulee toisiin ajatuksiin sen suhteen, onko hän todella suorittanut tietyn tehtävän, tai jos käyttäjä klikkaa vahingossa tehdyksi väärän tehtävän. Sama koskisi tietty myös vaiheessa olevia tehtäviä: Tilanteessa jossa käyttäjä syystä tai toisesta joutuu keskeyttämään kyseisen tehtävän suorituksen, hän saattaisi haluta palauttaa sen perustilaan.

Kokeilin myös admin-käyttäjän luomista ja sen toimintoja, joissa en havainnut myöskään ongelmia:

  • Kategorioiden ja tehtävien luominen, muokkaaminen ja poistaminen toimivat kuten pitääkin. Alitehtävien luomista ei vielä ollut toteutettu, mutta aikaan nähden ohjelmassa on mielestäni jo varsin paljon toiminnallisuutta. Ajattelin, voisiko tehtävien muokkaukseen liittää myös tehtävän kategorian vaihtamisen sekä kategorian lisäämisen jo luodulle tehtävälle?

Viimeiseksi kävin läpi ohjelmakoodin:

  • Kokonaisuudessan koodi on loogisesti etenevä ja helposti luettava. Muuttujat, metodit sekä html-sivut on nimetty järkevästi. Ohjelman eri toiminnot on eriytetty selkeästi omiin kansioihinsa ja tiedostoihinsa.

  • Tietokantataulut ja niiden suhteet on myös hyvin toteutettu ja noudattavat tietokantakaaviossa mallinnettuja. SQL-yhteenvetokyselyjä on vasta muutama, mutta ne ovat järkeviä ja täyttävät monimutkaisuusvaatimukset. Erityismaininta siitä, että salasanoja ei tallenneta plaintextinä.

  • Lomakkeiden validoinnissa voisi huomoida enemmänkin kuin vain syötteen minimipituuden. Ainakin liian pitkät syötteet voisi myös karsia. Validoinnin epäonnistumisesta voisi myös ilmoittaa käyttäjälle sopivalla viestillä.

Kaiken kaikkiaan ohjelmasi on todella hyvällä mallilla. Tsemppiä loppukurssille!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.