GithubHelp home page GithubHelp logo

lamtonylam / haalarimerkkidex Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 0.0 1.13 MB

Tietokannat ja web-ohjelmointi harjoitustyö

Home Page: https://haalarimerkkidex.fly.dev/

Python 44.01% HTML 49.28% Procfile 0.04% Dockerfile 0.59% CSS 5.64% JavaScript 0.44%

haalarimerkkidex's Introduction

Hi 👋, I'm Tony

CS Student at University of Helsinki

Top Langs

LinkedIn Telegram me

haalarimerkkidex's People

Contributors

deepsource-autofix[bot] avatar deepsource-io[bot] avatar dependabot[bot] avatar lamtonylam avatar

Watchers

 avatar

haalarimerkkidex's Issues

Vertaispalaute #2

Yleiskuva

Sovelluksen idea on minusta hauska ja toimiva. Myös dokumentaatio ja käynnistysohjeet olivat todella selkeät eikä niiden kannsa ollut mitään ongelmia. Myös koodi näytti todella hyvältä enkä löytänyt siitä mitään merkittäviä ongelmia tai virheitä. Myös koodissa olevat kommentit antoivat hyvän käsityksen kaikista funktioista ja niiden käyttötarkoituksista. Alla kuitenkin muutamia pieniä huomioita sovelluksesta ja sen käytöstä:

Huomioita / bugeja

  • Kun hakee kaikkia yhteisön merkkejä niin hakusana ja valittu kategoria voisi jäädä näkyviin sen sijaan että nollautuu joka kerta.
  • Huomasin myös, että sovellus kaatuu kun valitsee sekä hakusanan että kategorian.
  • Sovellukseen saa myös lisättyä haalarimerkin ilman kuvaa. Tämä tosin voi olla tarkoituksellista?
  • Kirjautumis-sivulla käyttäjätunnus voisi jäädä näkyviin vaikka salasanan kirjoittaa väärin kuten rekisteröintisivullakin.
  • Tällä funktiolla ei näyttäisi olevan mitään käyttötarkoitusta (ainakaan tällä hetkellä).
  • Kommenttien pituudelle voisi lisätä jonkin backend-tarkistuksen. Nyt kommenttien maksimipituus määritetään html-tekstikentässä, mutta tämän voi helpoisti ohittaa muokkaamalla suoraan selaimessa html-tiedostoa (inspect, inspect elements...)
    • -> sivulle saa siis lähetettyä tyhjiä kommentteja tai huolestuttavammin teoriassa äärettömän pitkiä kommentteja.
  • Ei sinänsä liity sovelluksen toimintaan, mutta tuota github-etusivua ja hakemistoa saisi kenties hiukan siistimmän näköiseksi + parantaisi luettavuutta jos jakaisi esimerkiksi .py moduulit omaan kansioon.
  • Joka kerta kun poistaa merkin omasta kokoelmasta niin aiheutuu 404-virhe.
  • Myös merkki-sivulla kun yrittää palata navbarin kautta taaksepäin niin joutuu 404-virhesivulle koska html-pohja ohjaa sivulle jota ei ole.

yhteenveto

Kaikenkaikkiaan sovellus vaikuttaa jo nyt todella hyvältä ja toimivalta kokonaisuudelta. Suurimmat huomiot olivatkin vain pieniä käytettävyyttä koskevia yksityiskohtia enkä itse huomannut mitään suurempia puutteita tai ongelmia.

Ensimmäinen vertaisarviointi

Käyttökokemus

Käyttäjätunnuksen luominen, merkin lisääminen yhteisöön ja sieltä omiin kokoelmiin onnistui vaivatta.
Ulkoasu on selkeä ja oletan sen olevan optimoitu puhelimia varten, koska sitä kautta se ainakin näyttää selkeämmältä.

Huomioita

  • Etusivulla ei ole selkeää funktiota, joka liittyisi sovelluksen toimintaan olennaisesti.
  • Uuden merkin lisääminen ensin yhteisöön ja sitten kokoelmaan on hieman kankeaa. Käyttäjälle voisi antaa valinnaksi merkin lisääminen suoraan omaan profiiliin.
  • "Katso lisätietoja / lisää merkki omaan kokoelmaasi" on vähän turhan pitkä teksti, eikä se täysin kuvaa napin toimintaa

Koodikanta

Koodi on selkeää, jaoteltu tarpeeksi fiksusti ja noudattaa pääsääntöisesti Pythonin yleisiä sopimuksia.
En näe räikeitä virheitä tai puutteita, joten nillitän alempana hieman kurssin tavoitteisiin sopivammista tyyleistä tehdä samat toiminnallisuudet. Mainitsen myös räikeästä tietoturvaongelmasta.

Huomioita

def patchname_exists(name):

Voit korvata tämän komennon SQL:n puolella käyttämällä tietokannassa UNIQUE-rajoitusta.
Sovelluksen toiminta luottaa ilmeisesti nimien uniikkiuteen, joten se kannattaa varmistaa ihan tietokannan puolella myös.

created_by_user TEXT REFERENCES Users(username)

Pääsääntöisesti kannattaa viitata taulusta tauluun aina id:llä.

if sort_order == "asc":

Voit pistää nämä testit suoraan SQL:aan myös if-elsenä

"new_merkki.html", success="Merkki lisätty yhteiseen kokoelmaan onnistuneesti"

Luonteva uudelleenohjaus olisi uuden merkin sivulle. Tällöin käyttäjä voi lisätä merkin suoraan kokoelmaansa. Toki monen merkin lisääminen on vähän vaikeampaa... Makukysymys.

if masterpassword != "tsohatsoha":

Tämä kannattaa heittää .env-tiedostoon.

if data is not None:

Sama kuin if data

Lopetus

Hyvin on lähtenyt projekti käyntiin. Pientä hiomista ja muutama ominaisuus lisää, niin hyvä tulee. Ei ole tässä vaiheessa mikään kiire, mutta kannattaa kokeilla hieman tyylitellä sivua jossain välissä. Käyttäjäkokemuksen helppokäyttöisyyteen kannattaa panostaa, koska käyttäjäkuntasi toimii pääsääntöisesti kognitiivisesti rajoittuneessa tilassa, jossa pienetkin jutut voivat ärsyttää.

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.