Frontend-sovelluskehysten React ja Vue.js vertailu kehittäjäkokemuksen näkökulmasta
Lakkala, Jukka (2025)
Lakkala, Jukka
2025
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-2025121235707
https://urn.fi/URN:NBN:fi:amk-2025121235707
Tiivistelmä
Tämän opinnäytetyön tavoitteena oli vertailla keskenään kahta yleisesti frontend-kehityksessä käytettävää Javascript-pohjaista sovelluskehystä, React- ja Vue.js-sovelluskehyksiä. Tässä työssä keskityttiin pääasiassa vertailemaan näiden teknologioiden eroja kehittäjän näkökulmasta sekä koodisyntaksien erojen osalta. Lisäksi pohdittiin myös yleisellä tasolla sitä, minkälaisten sovellusten kehittämiseen nämä teknologiat sopivat sekä pohdittiin näiden teknologioiden etuja ja haittoja suhteessa toisiinsa. Koodirakenteen osalta vertailun kohteena olivat näiden teknologioiden erot niiden komponenttimallien, tilanhallinnan, tapahtumien käsittelyn, reitityksen, navigaation sekä tyylien luomisen osalta.
Tämä työ toteutettiin toiminnallisena opinnäytetyönä, jossa käytiin ensin teorian tasolla läpi Reactin ja Vuen välisiä eroja vertailun kohteena olleiden toiminnallisuuksien osalta koodiesimerkkien avulla havainnollisten ja lisäksi tätä työtä varten luotiin kaksi samankaltaista sääsovellusta, joiden tarkoituksena oli havainnollistaa näiden teknologioiden eroja käytännön kehittämisen tasolla. Lopuksi pohdittiin työtä varten luotujen sovellusten pohjalta, kumpi teknologia oli toimivampi ratkaisu näiden kahden pienimuotoisen sovelluksen kehittämisessä sekä pohdittiin myös yleisellä tasolla sitä, kumpi teknologia on yleisesti katsoen parempi vaihtoehto frontend-kehityksessä.
Lopputuloksena voidaan todeta, että tätä työtä varten luotujen suhteellisen pienten ja yksinkertaisten sovellusten luomiseen Vue oli toimivampi teknologia johtuen sen yksinkertaisemmasta koodirakenteesta Reactiin verrattuna ja erityisesti kehittäjän näkökulmasta Vue-sovelluksen kehitysprosessi sujui huomattavasti ketterämmin verrattuna React-sovelluksen tekoprosessiin. Kuitenkaan tätä työtä varten tehtyjen sovellusten pohjalta ei voida tehdä laajempia johtopäätöksiä siitä, kumpi teknologia on parempi ratkaisu, koska nämä sovellukset olivat sen verran pieniä ja yksinkertaisia. Yleisellä tasolla voidaan kuitenkin todeta, että Vue sopii paremmin tämän työn kaltaisten pienten sovellusten kehittämiseen sen yksinkertaisuuden ja paremman suorituskyvyn kannalta, kun taas React sopii paremmin isompien sovellusten kehittämiseen sen laajemman peruskirjaston takia.
Tämä työ toteutettiin toiminnallisena opinnäytetyönä, jossa käytiin ensin teorian tasolla läpi Reactin ja Vuen välisiä eroja vertailun kohteena olleiden toiminnallisuuksien osalta koodiesimerkkien avulla havainnollisten ja lisäksi tätä työtä varten luotiin kaksi samankaltaista sääsovellusta, joiden tarkoituksena oli havainnollistaa näiden teknologioiden eroja käytännön kehittämisen tasolla. Lopuksi pohdittiin työtä varten luotujen sovellusten pohjalta, kumpi teknologia oli toimivampi ratkaisu näiden kahden pienimuotoisen sovelluksen kehittämisessä sekä pohdittiin myös yleisellä tasolla sitä, kumpi teknologia on yleisesti katsoen parempi vaihtoehto frontend-kehityksessä.
Lopputuloksena voidaan todeta, että tätä työtä varten luotujen suhteellisen pienten ja yksinkertaisten sovellusten luomiseen Vue oli toimivampi teknologia johtuen sen yksinkertaisemmasta koodirakenteesta Reactiin verrattuna ja erityisesti kehittäjän näkökulmasta Vue-sovelluksen kehitysprosessi sujui huomattavasti ketterämmin verrattuna React-sovelluksen tekoprosessiin. Kuitenkaan tätä työtä varten tehtyjen sovellusten pohjalta ei voida tehdä laajempia johtopäätöksiä siitä, kumpi teknologia on parempi ratkaisu, koska nämä sovellukset olivat sen verran pieniä ja yksinkertaisia. Yleisellä tasolla voidaan kuitenkin todeta, että Vue sopii paremmin tämän työn kaltaisten pienten sovellusten kehittämiseen sen yksinkertaisuuden ja paremman suorituskyvyn kannalta, kun taas React sopii paremmin isompien sovellusten kehittämiseen sen laajemman peruskirjaston takia.
