Ohjelmointikielten vertailu web-ohjelmoinnissa : Node.js, C# ja Rust
Sipola, Mikko; (2023)
Sipola, Mikko
2023
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2023110828837
https://urn.fi/URN:NBN:fi:amk-2023110828837
Tiivistelmä
Opinnäytetyön tarkoituksena oli tutkia ja arvioida kolmen ohjelmointikielen ja niille tarkoitetun web-ohjelmointikehyksen soveltuvuutta web-palvelinsovellusten kehittämiseen. Tutkimuksessa arvioitiin kielten ominaisuuksia ja suorituskykyä, mutta myös kyseisten ekosysteemien tarjoamaa kehittäjäkokemusta. Suorituskykyä arvioitaessa otettiin mukaan nopeuden ja muistinkäytön lisäksi energiatehokkuuden kriteeri.
Tutkimuksen toteutustapa oli vertaileva tutkimuksellinen kehittämistyö, jossa aluksi lähestyttiin tutkittavaa
aihetta tiedollisesti monesta näkökulmasta ja lopuksi käytännössä opeteltiin ohjelmoimaan kyseisillä kielillä
ja kehyksillä riittävän tietomäärän kerryttämiseksi.
Opinnäytetyössä tehdyn tutkimuksen tuloksina saatiin monipuolisesti tietoa Node.js, C#, sekä Rust -ohjelmointikielten, sekä niille tarkoitettujen Express, ASP.NET minimal API ja Rocket -web-palvelinohjelmointikehysten käytettävyydestä, ominaisuuksista ja suorituskyvystä. Tulosten perusteella uutta sovellusta suunnitteleva kehittäjä voi arvioida kunkin kielen ja kehyksen soveltuvuutta projektiin.
Tutkimuksen johtopäätöksenä voitiin todeta kuinka eri kielten ja ohjelmointikehysten ominaisuudet vertautuvat toisiinsa, minkälaiseen käyttöön mikäkin on sopivin, minkälainen kehittäjäkokemus kullakin kielellä oli
ja minkälaisia eroja niiden suorituskyvyissä oli havaittavissa.
Tutkimuksen toteutustapa oli vertaileva tutkimuksellinen kehittämistyö, jossa aluksi lähestyttiin tutkittavaa
aihetta tiedollisesti monesta näkökulmasta ja lopuksi käytännössä opeteltiin ohjelmoimaan kyseisillä kielillä
ja kehyksillä riittävän tietomäärän kerryttämiseksi.
Opinnäytetyössä tehdyn tutkimuksen tuloksina saatiin monipuolisesti tietoa Node.js, C#, sekä Rust -ohjelmointikielten, sekä niille tarkoitettujen Express, ASP.NET minimal API ja Rocket -web-palvelinohjelmointikehysten käytettävyydestä, ominaisuuksista ja suorituskyvystä. Tulosten perusteella uutta sovellusta suunnitteleva kehittäjä voi arvioida kunkin kielen ja kehyksen soveltuvuutta projektiin.
Tutkimuksen johtopäätöksenä voitiin todeta kuinka eri kielten ja ohjelmointikehysten ominaisuudet vertautuvat toisiinsa, minkälaiseen käyttöön mikäkin on sopivin, minkälainen kehittäjäkokemus kullakin kielellä oli
ja minkälaisia eroja niiden suorituskyvyissä oli havaittavissa.