Jetpack Compose vs React Native – Differences in UI Development
Soininen, Visa (2021)
Soininen, Visa
2021
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-2021110919559
https://urn.fi/URN:NBN:fi:amk-2021110919559
Tiivistelmä
Insinöörityön tarkoituksena oli vertailla suorituskykymittausten avulla Jetpack Compose- ja React Native -käyttöliittymäkehyksiä sekä sovelluskehittäjän että sovelluksen käyttäjän näkökulmasta.
Työssä kehitettiin kaksi sovellusta, jotka molemmat hyödyntävät samaa rajapintaa. Sovelluksille annettiin samat yksinkertaiset vaatimukset, minkä jälkeen työkaluja vertailtiin niin suorituskyvyn kuin ohjelmoinnin helppouden osalta. Suorituskykyvertailua tehtiin kummankin työkalun tarjoamilla ohjelmistoilla sekä Perfetto-suorituskykyprofiloijan avulla. Kaikki testit tehtiin Android-käyttöjärjestelmällisellä OnePlus 7 -puhelimella.
Tuloksista voidaan päätellä, että ohjelmoijan näkökulmasta React Native on soveltuvampi työkalu, jos sovellus täytyy kehittää lyhyessä ajassa. React Nativella kehitetty sovellus kykenee toimimaan myös iOS-laitteilla. Suorituskyvyn kannalta Composen avulla kehitetty sovellus oli suurimmassa osassa testeistä nopeampi kuin React Nativella kehitetty sovellus. Saatujen tulosten mukaan React Native toimii hyvin prototyyppien ja pienten sovellusten tekemiseen, mutta Compose on parempi työkalu, kun tehdään suuria sovelluksia, joissa on paljon toiminnallisuuksia.
Tätä työtä voidaan hyödyntää, kun on tarve luoda uusi sovellus, mutta sovelluksen kehittämiseen käytettävästä työkalusta ei ole tehty päätöstä. Työ tarjoaa kehittämistyön eri osa-alueisiin näkemyksiä, jotka saattavat vaikuttaa päätöksentekoon.
Työssä kehitettiin kaksi sovellusta, jotka molemmat hyödyntävät samaa rajapintaa. Sovelluksille annettiin samat yksinkertaiset vaatimukset, minkä jälkeen työkaluja vertailtiin niin suorituskyvyn kuin ohjelmoinnin helppouden osalta. Suorituskykyvertailua tehtiin kummankin työkalun tarjoamilla ohjelmistoilla sekä Perfetto-suorituskykyprofiloijan avulla. Kaikki testit tehtiin Android-käyttöjärjestelmällisellä OnePlus 7 -puhelimella.
Tuloksista voidaan päätellä, että ohjelmoijan näkökulmasta React Native on soveltuvampi työkalu, jos sovellus täytyy kehittää lyhyessä ajassa. React Nativella kehitetty sovellus kykenee toimimaan myös iOS-laitteilla. Suorituskyvyn kannalta Composen avulla kehitetty sovellus oli suurimmassa osassa testeistä nopeampi kuin React Nativella kehitetty sovellus. Saatujen tulosten mukaan React Native toimii hyvin prototyyppien ja pienten sovellusten tekemiseen, mutta Compose on parempi työkalu, kun tehdään suuria sovelluksia, joissa on paljon toiminnallisuuksia.
Tätä työtä voidaan hyödyntää, kun on tarve luoda uusi sovellus, mutta sovelluksen kehittämiseen käytettävästä työkalusta ei ole tehty päätöstä. Työ tarjoaa kehittämistyön eri osa-alueisiin näkemyksiä, jotka saattavat vaikuttaa päätöksentekoon.