Coder Social home page Coder Social logo

tsoha-noteapp's Introduction

tsoha-noteapp's People

Watchers

James Cloos avatar

tsoha-noteapp's Issues

Koodikatselmointi

Koodi ladattu : 10/11/2019 13:53

Herokussa testailu

User storyt

  • Käyttäjä voi luoda itselleen käyttäjätunnuksen ja salasanan
  • Käyttäjä voi kirjautua sisään tai ulos luodulla tunnuksella ja salasanalla
  • Käyttäjä voi luoda uusia muistiinpanoja, jotka ovat oletuksena vain ne luoneen käyttäjän muokattavissa ja luettavissa
  • Kirjoitusoikeudet olemassa olevaan muistiinpanoon omaava käyttäjä voi muokata muistiinpanon sisältöä
  • Tässä tuli Internal Server Error
  • Muistiinpanoihin voi liittää tageja
  • Käyttäjä voi etsiä tagien avulla muistiinpanoja, joihin hänellä on lukuoikeus
  • Tämä toimi alkuun epäintuitiivisesti, haku ei salli osittaisia osumia, esim "tagi" sana ei palauta "tagi1" ja "tagi2", ja ilman herokussa löytyvää muistiinpanoa joka selittää miten haku toimii, en tiedä olisinko keksinyt tätä
  • Käyttäjä voi suodattaa muistiinpanoja vain tietyllä aikavälillä luotuihin tai päivitettyihin muistiinpanoihin (WIP)
  • Käyttäjä voi lisätä muita käyttäjiä kontaktilistalleen, mikäli hänellä on hallussaan toisen käyttäjän viisikirjaiminen tunnistusmerkkijono (WIP)
  • Käyttäjä voi halutessaan jakaa muistiinpanon muiden käyttäjien kanssa, joko pelkällä lukuoikeudella tai myös kirjoitusoikeudella (WIP)

User storyjen ulkopuolelta löytyvät ominaisuudet

  • Muistiinpanon voi poistaa
  • Tässä tuli taas internal server erroria, vaikkakin taisi poistua sitten oikeasti, mutta piti käsin navigoida virhesivulta pois

Koodin tarkastelu

Repositoriossa löytyvillä ohjeilla ei saanut ohjelmaa toimimaan windowssilla, joutui erikseen etsimään ohjeet.

  • Samat bugit myös omalla koneella, eli editointi ja delete aiheuttavat jinja exceptionieita.

    • "return render_template("notes/notelist.html", notes=notes)" sisältää syyn siihen, miksei edit toimi notes_update metodissa
    • tasan sama koodinpätkä löytyy myös notes_delete kentästä.
    • Syy siihen mikseivät nämä toimi, löytyy taas itse notelist.html tiedostosta.
  • NoteForm formissa ei validointia "content" kentälle?

  • Ohjelmakoodi oli helppolukuista, metodien nimeämispolitiikka oli yhdenmukainen.

  • Sivu on yksinkertainen navigoida, kaikkeen on helppo päästä käsiksi

  • Toisaalta, sivu tuntuu kovin yksinkertaiselta myös toiminnallisuuden osalta toistaiseksi, sillä sivulla on ainoastaan mahdollista lisätä muistiinpanoja, editoida ja poistaa muistiinpanoja.

Yleistä

  • Readme.md voisi ehkä lisätä ohjeet Windowssille
  • Kuvauksessa puhutaan ajanseuraamisesta, mutta en löydä ohjelmasta viitteitä mihinkään ajanseurantaan, enkä myöskään keksi miten tuohon tietokantatauluun tämä toimisi yhteen?

Koodikatselmointi

Projekti ladattu 30.9.2019 klo 18:05

Kirjautuminen ja rekisteröityminen:

  • Linkit on aseteltu järkevästi ja ne on helppo löytää
  • Uuden käyttäjän luominen onnistuu
  • Rekisteröinnissä on hyvät validoinnit syötteille
  • Kirjautuminen toimii tarkoituksenmukaisesti sekä testitunnuksilla että uudella käyttäjällä
  • Salasanojen käsittely tehdään turvallisesti Bcryptillä
  • Pienenä parannuksena voisi olla käyttäjänimen näyttäminen navigaatiopalkissa

Muistiinpanot:

  • Linkkien asettelu on järkevää
  • Note-taululla on toimivat CRUD-ominaisuudet
  • Lomakkeilla on yksinkertainen, mutta aiheeseen sopiva validointi
  • Linkit muistiinpanojen lisäämiseen, muokkaamiseen ja poistamiseen on suojattu

Ohjelmakoodi on helppolukuista - funktioiden ja luokkien nimet ovat kuvaavia ja nimeämiskäytänteet vaikuttavat johdonmukaisilta. Sivujen HTML-elementtejä käytetään oikeisiin tarkoituksiin.

Kaikki käyttötapaukset (pl. WIP) on mahdollista tehdä sovelluksen nykyisessä versiossa. Sovelluksesta löytyi kuitenkin yksi bugi. Kun muistiinpano on päivitetty, listaussivulle palatessa tietokannasta haetaan kaikkien käyttäjien olemassa olevat muistiinpanot listattavaksi. Ongelma liittyy notes_update -funktion paluuarvoon.

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.