Web sovellus tuo verkkosivustolle nativiivisovelluksen ominaisuudet

Verkkosivustoja on ollut olemassa jo pitkään, mutta niissä käytettävä tekniikka ja toiminnallisuudet eivät vuosien varrella ole muuttuneet merkittävästi. Ehkä osittain tästä syystä vielä tänäkin päivänä selaimella nähtävä sisältö ja sen mahdollisuudet mielletään edelleenkin vain verkkosivustoiksi.

Raskaita toiminnallisuuksia vaativiin tehtäviin on verkkosivustojen rinnalle tehty natiivisovelluksia, kuten Microsoft Wordin kaltaisia työpöytäsovelluksia sekä sovelluskaupoista ladattavia mobiilisovelluksia.

Natiivisovelluksien kehittäminen ja ylläpitö on kuitenkin työlästä ja sovelluksesta voidaan joutua kehittämään useita eri versioita, esimerkiksi omat versiot Android- ja iOS -laitteille, vaikka molemmat sovellukset toimisivat samoin. Näiden kahden lisäksi alustoja on kymmeniä muitakin. Jos uskollisesti haluttaisiin palvella kaikkia mahdollisia käyttäjiä, sovelluksesta pitäisi saada versiot kaikille alustoille. Tämän lisäksi pitää huolehtia, että sovellus toimii tietyn laitteen eri kokoisilla ruuduilla ja eri versioilla. Ja mikä tärkeintä, käyttäjä pitää saada lataamaan sovellus.

Nykyiset selaimet mahdollistavat ikään kuin verkkosivuston ja natiivisovelluksen yhdistämisen ”web sovellukseksi” käyttämällä molempien parhaita puolia.

Mikä web sovellus?

Rakkaalla lapsella monta nimeä: web sovellus, web applikaatio, web app tai PWA, eli progressive web application. Lyhyesti kuvattuna web applikaatiot ovat käytännössä yhdistelmä verkkosivujen ja natiivisovellusten hyviä puolia. Tässä kirjoituksessa terminä käytetään ”web sovellusta”, mutta käytännössä kyse on siis monipuolisista, hyvin toteutetuista nettisivuista.

”Just websites that took all the right vitamins”
Alex Russell
Googlen Senior Software Engineer

Web sovellukseen pääsee käsiksi selaimella aivan kuten mihin tahansa verkkosivuun – täysin laitteesta riippumatta. Käyttämäsi selain antaa sovellukselle raamit joiden puitteissa toimia ja sovellus mukautuu niihin. Esimerkiksi, jos käytät sovellusta puhelimella ja näyttösi on pieni, fonttien koko ja elementtien sijoittelu voi muuttua verrattuna siihen jos käyttäisit sovellusta isommalla ruudulla. Samoin, jos käytät sovellusta työpöytäkoneella eikä sinulla ole web-kameraa, ei sovelluskaan pääse käyttämään kameraa.

Selain siis tarjoaa erinomaisen sovelluskehitysalustan joka toimii laitteesta, käyttöjärjestelmästä ja muusta ohjelmistosta riippumatta. Sovellus toteutetaan vain kerran, jonka jälkeen se toimii kaikilla käyttäjillä, joilla on internetselain.

Mitä web sovellukset mahdollistavat?

Web sovellukset pystyvät jo hyvin pitkälti samaan, mihin aiemmin olisi tarvinnut natiivin sovelluksen. Vieraillessaan web sovellukseksi toteutetulla verkkosivustolla käyttäjä voi ”asentaa” palvelun puhelimensa työpöydälle, josta hän ensi kerralla pääsee suoraan palveluun – aivan natiivisovelluksen tapaan. Todellisuudessa varsinaista asentamista ei tapahdu, vaan selain vain käytännössä lisää työpydälle pikakuvakkeen sivustolle.

Käyttäjän ei siis tarvitse ladata erillistä sovellusta sovelluskaupasta eikä hän tarvitse nopeaa WiFi -yhteyttä.

Kameran ja työpöydälle asentamisen lisäksi monet muut toiminnallisuudet ovat mahdollisia. Web sovellukset pääsevät käsiksi esimerkiksi laitteen Bluetoothiin, notifikaatioihin, sijaintiin ja  äänentoistoon. Palvelun saa jopa ymmärtämään puhetta ja puhumaan takaisin, jopa käyttäjän omalla kielellä. Lisää ominaisuuksia tulee koko ajan lisää, kun teknologia kehittyy nopeasti.

Web sovelluksista saadaan tehtyä erittäin nopeita, joka näkyy suoraan käyttäjälle pieninä latausaikoina tai jopa niiden puutteena. Nopeudessa voidaan hyödyntää selaimen välimuistia, joten esimerkiksi jos sivu ladataan uudelleen, käyttäjän ei tarvitse ladata kaikkia kuvia uudelleen vaan ne tulevat välimuistista ja käyttäjä näkee kuvat samantien.

Natiivisovellukseen tottunut tietää, että on tärkeää että sovellus toimii joskus myös ilman internet-yhteyttä, vaikkapa matkoilla ollessa. Tämä onnistuu myös web -sovelluksilla. Verkkosivuston saa siis halutessaan nykyisin toimimaan ilman verkkoyhteyttä, mutta tämä vaatii sen, että sivuilla vierailee aikaisemmin internetyhteyden kanssa ainakin kerran.

Milloin valita web sovellus?

Aivan perinteisen verkkosivun, muutamalla sisältösivulla ja yritysesittelyllä, ei välttämättä tarvitse vielä olla web sovellus, vaikka se sitä voisikin olla. Sen sijaan, heti kun palvelu on hiemankin laajempi ja sen tarkoituksena on esimerkiksi mahdollistaa käyttäjälle jokin tietty toimenpide, kannattaa silloin jo harkita web sovellusta. Kyse ei kuitenkaan ole suurista investoinneista, vaan normaalin verkkosivuston toteutuksen yhteydessä hyvinkin pienellä lisällä saadaan sivustosta paljon rikkaampi. Päivittämällä verkkosivuston web sovellukseksi, saa lähes samalla vaivalla myös mobiilisovelluksen, kunhan asia huomioidaan jo suunnittelun alussa.

Mikroarkkitehtuuri ja web sovellukset

Yhtenä merkittävänä etuna web sovellusten yhteydessä esiin tulee myös eriytetyt järjestelmät tai ns. mikroarkkitehtuuri. Moderni tapa toteuttaa web sovellukset on irroittaa varsinainen sovellus muista järjestelmistä omaksi kokonaisuudekseen. Tämä tuo lisää mahdollisuuksia taustajärjestelmien valintaan, tai lisää joustavuuttaa jo olemassa oleviin järjestelmiin ja niiden hyödyntämiseen. Esimerkiksi sisällönhallintajärjestelmänä voi olla WordPress (tai vaikka useampikin järjestelmä).

Vaikka tämä ei ole ainoa tapa toteuttaa web sovelluksia, siinä on paljon etuja. Parhaimpana puolena on monikäyttöisyys jatkoa ajatellen. Esimerkiksi, jos sisällönhallintajärjestelmä joudutaankin vaihtamaan, koko web -sovellusta ei jouduta vaihtamaan tai tekemään alusta.

Sovellusten ja verkkosivujen tulevaisuudennäkymät

Sovelluskehittäjät ja alustan tarjoajat ovat kaikki heränneet eri alustojen tuomaan ongelmaan ja lähteneet ratkaisemaan sitä web sovellusten kautta. Monet internetselainten tekijät miettivätkin nykyisin yhdessä uusia standardeja, kuinka tuoda selaimeen uusia toiminnallisuuksia ja kuinka tehdä selaimista parempi alusta palveluille.

Yhtensä haasteena on vielä web sovellusten löydettävyys. Koska web sovellukset ovat käytännössä vain verkkosivuja, niitä voi sinällään löytää kuten muitakin verkkosivustoja hakukoneiden kautta tai jakamalla linkin. Monet silti vielä luottavat natiivisovellusten sovelluskauppoihin löytääkseen tarpeisiin sopivia sovelluksia, ja tähän asti web sovelluksia ei ole voinut lisätä sovelluskauppoihin.

Tämäkin on tosin parhaillaan muuttumassa, ja esimerkiksi Microsoft onkin alkanut jo oman hakumoottorinsa avulla tuoda web sovelluksia automaattisesti osaksi Microsoft Storea. Nykyisellään muun muassa Twitterin web sovellus löytyy jo Microsoft Storesta. Vaikka sovellus löytyykin Storesta, se on silti sama, johon pääsee myös suoraan selaimella.

Web sovellukset ylipäätään ovat nyt iso puheenaihe ja näyttää, että tämä on kehityksen suunta myös jatkossa. On mahdollista, että webpohjaiset ratkaisut tulevat ajan myötä korvaamaan natiivisovelluksia, sillä selainsovellukset toimivat alustasta riippumatta, jolloin samoja työkaluja voi käyttää kotikoneella, työkoneella, puhelimella tai vaikka televisiostani kotisohvalta.