Achieving native-like experience on the web with progressive web apps
Linden, Oskari (2020-08-19)
Achieving native-like experience on the web with progressive web apps
Linden, Oskari
(19.08.2020)
Julkaisu on tekijänoikeussäännösten alainen. Teosta voi lukea ja tulostaa henkilökohtaista käyttöä varten. Käyttö kaupallisiin tarkoituksiin on kielletty.
avoin
Julkaisun pysyvä osoite on:
https://urn.fi/URN:NBN:fi-fe2020101383850
https://urn.fi/URN:NBN:fi-fe2020101383850
Tiivistelmä
For long developing applications for mobile has required developing a separate app for each platform that the developer wants the app to support. Apple has App store, Google has Play store and Microsoft has Microsoft store. Web apps can be used for creating apps that work on all devices with modern web browsers. Web apps have traditionally been outperformed by native apps and therefore been less popular when comparing to native application development. Progressive web apps (PWAs) are new kind of apps that aim to combine the best of native and web apps. These apps can be installed to the user's device and have access to some of the features that have only been available on native apps in the past.
In this thesis we will compare PWAs with their native counterparts to find out if these apps really deliver what is promised and work as real unifiers between native and the web. We will list the benefits and drawbacks of developing PWAs. We will also turn an existing web app to PWA and see what benefits can be obtained. The results indicate that today PWAs can really be seen as a viable option compared to native apps and that there are barely any features today that could not be implemented with a PWA solution. Jo pitkään mobiilisovelluskehityksessä on tarvinnut luoda oma erillinen sovelluksensa jokaiselle alustalle, jota halutaan tukea. Applella on App store, Googlella Play kauppa ja Microsoftilla Microsoft store. Luomalla verkkosovellus voidaan taata, että sovellus toimii kaikilla laitteilla, joissa on moderni verkkoselain. Nämä sovellukset ovat kuitenkin perinteisesti toimineet natiiveja sovelluksia huonommin ja olleet täten epäsuosiossa niihin verrattuna. Progressiiviset verkkosovellukset (eng. Progressive web app, PWA) ovat uudenlaisia sovelluksia, joiden luvataan yhdistävän parhaat puolet natiiveista ja verkkosovelluksista. Nämä sovellukset on mahdollista asentaa käyttäjän laitteelle ja niillä on pääsy joihinkin ominaisuuksiin, joihin aiemmin vain natiiveilla sovelluksilla on ollut pääsy.
Tässä tutkielmassa verrataan progressiivisia verkkosovelluksia vastaaviin natiiveihin sovelluksiin, ja selvitetään, vastaako todellisuus sitä, mitä näistä sovelluksista luvataan. Työssä listataan kaikki edut ja haitat, joita PWA-kehitykseen liittyy. Tutkielmassa myös muunnetaan jo olemassa oleva verkkosovellus progressiiviseksi verkkosovellukseksi, ja nähdään, mitä etuja tällä saavutetaan. Tulokset osoittavat, että PWA on tänäpäivänä toimiva vaihtoehto natiivin sovelluksen korvaajaksi. Ei ole olemassa montaakaan sellaista ominaisuutta, jota PWA ei vielä tukisi.
In this thesis we will compare PWAs with their native counterparts to find out if these apps really deliver what is promised and work as real unifiers between native and the web. We will list the benefits and drawbacks of developing PWAs. We will also turn an existing web app to PWA and see what benefits can be obtained. The results indicate that today PWAs can really be seen as a viable option compared to native apps and that there are barely any features today that could not be implemented with a PWA solution.
Tässä tutkielmassa verrataan progressiivisia verkkosovelluksia vastaaviin natiiveihin sovelluksiin, ja selvitetään, vastaako todellisuus sitä, mitä näistä sovelluksista luvataan. Työssä listataan kaikki edut ja haitat, joita PWA-kehitykseen liittyy. Tutkielmassa myös muunnetaan jo olemassa oleva verkkosovellus progressiiviseksi verkkosovellukseksi, ja nähdään, mitä etuja tällä saavutetaan. Tulokset osoittavat, että PWA on tänäpäivänä toimiva vaihtoehto natiivin sovelluksen korvaajaksi. Ei ole olemassa montaakaan sellaista ominaisuutta, jota PWA ei vielä tukisi.