UI-sovelluskehysten vertailu ASP.NET-ympäristössä
Kerttula, Jani (2018)
Kerttula, Jani
Jyväskylän ammattikorkeakoulu
2018
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2018100515714
https://urn.fi/URN:NBN:fi:amk-2018100515714
Tiivistelmä
Opinnäytetyössä tehtiin Proof of Concept (PoC), kuinka modernisoida tuotteen teknolo-gioita ja niiden potentiaalia vanhojen menetelmien korvaajina. Samalla tutkittiin vaihto-ehtoisia tapoja siirtää dataa sovelluskerrosten välillä. Tavoitteena oli myös kehittää teki-jän omaa osaamista sovelluskehittämisen eri osa-aluilla. Taustalla oli olemassa oleva tuo-te energia-alan sovellusperheestä, jonka sisällä kokeilu toteutettiin. Työssä tehtiin aluksi alkumäärittelyt, suunnitelmat ja työmääräarviot.
Työssä toteutettiin REST-rajapinta käyttäen ASP.NET:n Web API-sovelluskehystä ja erilli-nen näyttömalli, joka lähetetään käyttöliittymille. Näyttömalli tehtiin noudattaen DTO-mallia ja niistä generoitiin TypeScript-luokat TypeWriter-lisäosaa käyttäen. Käyttöliittymät toteutettiin käyttäen Vue.js- ja React-sovelluskehyksiä. Molemmat käyttöliittymät luotiin noudattaen näiden ominaisia kehitystapoja sekä käyttäen TypeScript-ohjelmointikieltä. Näiden sovelluskehysten välillä käytiin vertailu, kumpi sovelluskehys sopii paremmin ky-seiselle tuotteelle ja kehittäjille.
Tuloksena tuli uusi rajapinta, joka hallinnoi tiedonsiirtoa sovelluskerrosten välillä. Olemas-sa olevasta tietokantamallista tehtiin typistetyt DTO-mallit. Käyttöliittymät tehtiin samalla sivulle rinnakkain. Kaikkien näiden tueksi tehtiin tarvittavia konfiguraatiomuutoksia ole-massa oleviin konfiguraatiotiedostoihin.
Vue.js-sovelluskehys sopii paremmin tuotteelle tekijän ja kehitystiimin mielestä. REST-API todettiin toimivaksi, mutta se vaatii vielä jatkokehitystä. DTO-malli ei sovellu tuotteen käyttötarkoitukseen suoraan, vaan vaatii jatkojalostamista. TypeWriter todettiin toimi-vaksi tietomallin eheyden ylläpitämiseksi.
Työssä toteutettiin REST-rajapinta käyttäen ASP.NET:n Web API-sovelluskehystä ja erilli-nen näyttömalli, joka lähetetään käyttöliittymille. Näyttömalli tehtiin noudattaen DTO-mallia ja niistä generoitiin TypeScript-luokat TypeWriter-lisäosaa käyttäen. Käyttöliittymät toteutettiin käyttäen Vue.js- ja React-sovelluskehyksiä. Molemmat käyttöliittymät luotiin noudattaen näiden ominaisia kehitystapoja sekä käyttäen TypeScript-ohjelmointikieltä. Näiden sovelluskehysten välillä käytiin vertailu, kumpi sovelluskehys sopii paremmin ky-seiselle tuotteelle ja kehittäjille.
Tuloksena tuli uusi rajapinta, joka hallinnoi tiedonsiirtoa sovelluskerrosten välillä. Olemas-sa olevasta tietokantamallista tehtiin typistetyt DTO-mallit. Käyttöliittymät tehtiin samalla sivulle rinnakkain. Kaikkien näiden tueksi tehtiin tarvittavia konfiguraatiomuutoksia ole-massa oleviin konfiguraatiotiedostoihin.
Vue.js-sovelluskehys sopii paremmin tuotteelle tekijän ja kehitystiimin mielestä. REST-API todettiin toimivaksi, mutta se vaatii vielä jatkokehitystä. DTO-malli ei sovellu tuotteen käyttötarkoitukseen suoraan, vaan vaatii jatkojalostamista. TypeWriter todettiin toimi-vaksi tietomallin eheyden ylläpitämiseksi.