Modernit Web-sovellukset
Teurokoski, Joonas (2013)
Teurokoski, Joonas
Lahden ammattikorkeakoulu
2013
Creative Commons Attribution-NonCommercial-ShareAlike 1.0 Suomi
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2013120920435
https://urn.fi/URN:NBN:fi:amk-2013120920435
Tiivistelmä
Tässä työssä käsitellään modernien ja skaalautuvien web-sovellusten kehittämistä erilaisten sovelluskehysten avulla. Työssä tutkittiin mahdollisuutta siirtää perinteisten web-sovellusten esityslogiikka ja liiketoimintalogiikka palvelimelta selaimelle. Logiikan siirtäminen selaimelle vähentäisi palvelimelle kohdistuvaa kuormaa ja parantaisi sovelluksen suorituskykyä. Työssä tutustuttiin asiakaspuolen Single-Page Application sovelluskehitysmalliin, sekä siihen liittyviin tekniikoihin ja toteutusmalleihin.
Single-Page Applicationit (SPA) ovat HTML5 web sovelluksia tai sivuja, jotka suoritetaan asiakaspään selaimessa. SPA-sovelluksissa kaikki ohjelmakoodi suoritetaan selaimessa tai haetaan palvelimelta erikseen tarvittaessa. Perusajatuksena selainpuolen sovelluksissa on se, että mitä tahansa käyttäjä tekeekin sivuilla, se ei vaadi sivuston uudelleenlatausta. SPA-sovellukset poikkeavat merkittävästi perinteisestä monisivuisesta toteutustavasta, jossa selain hakee uutta sisältöä palvelimelta jokaisesta käyttäjän interaktiosta.
Ongelma perinteisissä palvelinpuolen web-toteutuksissa on se, että jokaisen painalluksen aiheuttama sivulataus voi merkittävästi häiritä käyttökokemusta. Perinteisissä web-sovelluksissa käyttäjä joutuu odottamaan joka painalluksella, että koko sivusto on latautunut. Tämä tarkoittaa myös sitä, että mahdollisesti suuri määrä samaa dataa ladataan useita kertoja. Single-Page Applikaatioissa data haetaan käyttämällä XHR Ajax kutsuja ja päivittämällä ainoastaan tiettyjä osioita sivusta, täten tehden käyttökokemuksesta sulavamman.
Tutkittujen tekniikoiden demonstroimiseksi toteutettiin yksinkertainen asiakashallintajärjestelmä. Sovellus toteutettiin JavaScript-ohjelmointikielellä ja käyttäen asiakaspuolen Backbone.js- ja palvelinpuolen Node.js-sovelluskehyksiä.
Single-Page Applicationit (SPA) ovat HTML5 web sovelluksia tai sivuja, jotka suoritetaan asiakaspään selaimessa. SPA-sovelluksissa kaikki ohjelmakoodi suoritetaan selaimessa tai haetaan palvelimelta erikseen tarvittaessa. Perusajatuksena selainpuolen sovelluksissa on se, että mitä tahansa käyttäjä tekeekin sivuilla, se ei vaadi sivuston uudelleenlatausta. SPA-sovellukset poikkeavat merkittävästi perinteisestä monisivuisesta toteutustavasta, jossa selain hakee uutta sisältöä palvelimelta jokaisesta käyttäjän interaktiosta.
Ongelma perinteisissä palvelinpuolen web-toteutuksissa on se, että jokaisen painalluksen aiheuttama sivulataus voi merkittävästi häiritä käyttökokemusta. Perinteisissä web-sovelluksissa käyttäjä joutuu odottamaan joka painalluksella, että koko sivusto on latautunut. Tämä tarkoittaa myös sitä, että mahdollisesti suuri määrä samaa dataa ladataan useita kertoja. Single-Page Applikaatioissa data haetaan käyttämällä XHR Ajax kutsuja ja päivittämällä ainoastaan tiettyjä osioita sivusta, täten tehden käyttökokemuksesta sulavamman.
Tutkittujen tekniikoiden demonstroimiseksi toteutettiin yksinkertainen asiakashallintajärjestelmä. Sovellus toteutettiin JavaScript-ohjelmointikielellä ja käyttäen asiakaspuolen Backbone.js- ja palvelinpuolen Node.js-sovelluskehyksiä.