Mobiilikehityksen frameworkien vertailu: React Native, Flutter, Ionic
Paukkeri, Tatu (2024)
Paukkeri, Tatu
2024
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2024053018938
https://urn.fi/URN:NBN:fi:amk-2024053018938
Tiivistelmä
Tässä opinnäytetyössä vertailtiin kolmea suosittua monialustaisen mobiilikehityksen frameworkia. Vertailuun valitut frameworkit ovat React Native, Flutter ja Ionic. Työn tavoitteena oli toteuttaa kattava vertailu valittujen frameworkien välillä, ja esittää tuloksia kunkin frameworkin hyvistä
ja huonoista puolista, jotta lukija pystyisi tekemään tarpeidensa mukaan perustellun valinnan sopivasta frameworkista. Vertailu suoritettiin keskittyen kategorioihin: oppimiskäyrä, kehitysympäristö, suosio ja suorituskyky.
Opinnäytetyön teoriaosuuden alussa tutustuttiin mobiilikehitykseen ja sen eri tekniikoihin. Tämän jälkeen käytiin vertailtavat frameworkit ja niiden toimintaperiaatteet läpi hyödyntäen vahvasti tietoa frameworkien virallisista dokumentaatioista. Frameworkien suosioon liittyvä data kerättiin kahdelta ohjelmistokehittäjien suosimalta sivustolta. Teoriaosuudessa kerättyä tietoa hyödynnettiin myöhemmin frameworkien vertailua käsittelevässä luvussa.
Työn toiminnallisessa osuudessa kullakin frameworkilla toteutettiin yksinkertainen samanlaisen
logiikan omaava Android-sovellus. Luotujen sovelluksien suorituskykyä testattiin Android Studion kehittäjätyökaluilla.
Tietoperustan ja toiminnallisessa osuudessa hankitun tiedon pohjalta suoritettiin vertailu frameworkien välillä. Vertailun tulosten perusteella React Native ja Ionic tarjosivat matalamman
oppimiskäyrän, kun taas Flutter oli suosituin. Suorituskyvyn ja kehitysympäristön saralla mikään
frameworkeista ei erottunut merkittävästi joukosta. Suorituskyvyn todettiin vaativan laajemman
skaalan testausta mahdollisten eroavaisuuksien huomaamiseksi. Tulosten pohjalta tehtiin myös
johtopäätös, että frameworkien vahvuudet ja heikkoudet voivat vaihdella käyttökohteen sekä
käyttäjän taustan ja osaamisen mukaan.
ja huonoista puolista, jotta lukija pystyisi tekemään tarpeidensa mukaan perustellun valinnan sopivasta frameworkista. Vertailu suoritettiin keskittyen kategorioihin: oppimiskäyrä, kehitysympäristö, suosio ja suorituskyky.
Opinnäytetyön teoriaosuuden alussa tutustuttiin mobiilikehitykseen ja sen eri tekniikoihin. Tämän jälkeen käytiin vertailtavat frameworkit ja niiden toimintaperiaatteet läpi hyödyntäen vahvasti tietoa frameworkien virallisista dokumentaatioista. Frameworkien suosioon liittyvä data kerättiin kahdelta ohjelmistokehittäjien suosimalta sivustolta. Teoriaosuudessa kerättyä tietoa hyödynnettiin myöhemmin frameworkien vertailua käsittelevässä luvussa.
Työn toiminnallisessa osuudessa kullakin frameworkilla toteutettiin yksinkertainen samanlaisen
logiikan omaava Android-sovellus. Luotujen sovelluksien suorituskykyä testattiin Android Studion kehittäjätyökaluilla.
Tietoperustan ja toiminnallisessa osuudessa hankitun tiedon pohjalta suoritettiin vertailu frameworkien välillä. Vertailun tulosten perusteella React Native ja Ionic tarjosivat matalamman
oppimiskäyrän, kun taas Flutter oli suosituin. Suorituskyvyn ja kehitysympäristön saralla mikään
frameworkeista ei erottunut merkittävästi joukosta. Suorituskyvyn todettiin vaativan laajemman
skaalan testausta mahdollisten eroavaisuuksien huomaamiseksi. Tulosten pohjalta tehtiin myös
johtopäätös, että frameworkien vahvuudet ja heikkoudet voivat vaihdella käyttökohteen sekä
käyttäjän taustan ja osaamisen mukaan.