wiki:voterage

Version 1 (modified by joutapik, 6 years ago) (diff)

--

Harjoitustyöehdotus Web-sovellukset kurssia varten.

HVSC on kokoelma C64 SID-piirille luotuja ohjelmallisesti toistettavia musiikkikappaleita.

Kokoelmaan on tarjolla erilaisia natiiveja selaus ja toistinsovelluksia, mutta nyt olis ideana tehdä uudenlainen.

Käyttöliittymässä on tarkoitus käsitellä HVSC kappaleita joukkoina, jotka käyttäjä voi lajitella omiin soittolistoihinsa tai joihin käyttäjä voi määrittää musiikkityylimäärityksiä yms. relevanttia tietoa.

Tämä sovellus olis tarkoitus tehdä suurinpiirtein seuraavia palikoita käyttäen.

  • RedHat? Fedora virtuaalipalvelin, jossa tarvitaan Apache ja Python. Käytän tässä omaa domainia ja palvelinta www.6581.fi
  • Frameworkkina toimii Django laajennuksineen.
  • Django on MVC periaatteella toimiva Python pohjainen sovelluskehitysframework.
  • Apachen MOD_WSGI palikka pyörittää omaa WSGI prosessia kullekin saitille. Käytännössä Apache ohjaa HTTP kutsut Djangon ja siis saitin palasteltavaksi.
  • Djangon url-mekaniikka tunnistaa HTTP kutsun URLin ja kutsuu sitten djangoon luotavaa view luokan instanssia URL:n perusteella.
  • view on wrapperi, joka palauttaa dynaamisesti/staattisesti luodun sivun ja käsittelee sivustolta tulevat kutsut ja muotoilee vastauksen.
  • Djangossa ei tarvitse välttämättä tietokantaa luoda käsin tai omin luontiscriptein, vaan sen luonti ja muokkaaminen onnistuu models luokan avulla.
  • HTML-sivut on erikseen luotavissa djangon template-kielellä laajennetulla HTML formaatilla. Templatella tuodaan dynaaminen sisältö staattiseen sisältöön.
  • Muilta osin sivusto voi käyttää sitten CSS ja Javascript muotoiluja kuten mikä tahansa HTML sivusto.
  • Tässä sovelluksessa käytetään esim. bootstrap.js-luokkia tai vastaavaa muotoilussa. Bootstrapilla käyttöliittymä taipuu helposti mobiililaitteelle.