Monialustainen verkkosovellus Angular 2 -Ohjelmakehystä käyttäen
Keski-Rahkonen, Juho (2017)
Keski-Rahkonen, Juho
Turun ammattikorkeakoulu
2017
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2017052410083
https://urn.fi/URN:NBN:fi:amk-2017052410083
Tiivistelmä
Nykyään on useita erilaisia ohjelmistokehyksiä, ja niiden käyttö eroaa toisistaan aika paljon. Suosituimmat näistä ovat Reactjs ja Angular. Angular-ohjelmistokehyksestä on hiljattain tullut versio 2, jonka mukana tuli paljon uudistuksia. Ennen julkaisua, Angular 2 -testiversiot olivat erittäin vaikeakäyttöisiä.
Opinnäytetyön tarkoituksena oli selvittää, kuinka helppoa on toteuttaa Angular 2 -sovellus joka myöhemmin muutetaan Ionic 2 -sovellukseksi. Näin luotiin sekä nettisivusto että mobiilisovellus samalla koodipohjalla.
Näiden sovellusten ohella tuotettiin palvelinsovellus Node.js-alustalla. Opinnäytetyössä käytettiin Amazon Web Services -pilvipalveluita verkkosovelluksen ja palvelinsovelluksen käyttöönottoon.
Kehittämisen aikana huomattiin, että Angular 2 -ohjelmistokehyksen mukana tulevalla Angular-cli-komentorivityökalulla pystytään luomaan Angular 2 -sovellus helposti ja nopeasti, verrattuna aikaisempiin Angular-versioihin, jolloin ei ollut kyseistä komentorivityökalua. Samalla komentorivityökalulla voitiin myös luoda esimerkiksi lisää komponentteja sovellukseen. Angular-cli-komentorivityökalulla voitiin myös pystyttää testauspalvelin omalle tietokoneelle, jotta pystyttiin testaamaan ja kehittämään sovellusta selaimessa.
Ionic 2 -ohjelmistokehyksen mukana tulee oma Ionic-cli-komentorivityökalu, joka nopeuttaa Ionic 2 -sovelluksen kehitystä. Kehityksessä kuitenkin huomattiin, että siitä puuttuu joitain Angular-cli-työkalun ominaisuuksia. Näin katsottiin paremmaksi tehdä ensin Angular 2 -sovelluksessa jokin ominaisuus ja sitten kopioida se Ionic 2 -sovellukseen.
Opinnäytetyön tarkoituksena oli tehdä sekä Android- että iOs-alustoille sovellukset. Mutta kävi ilmi että iOs-alusta vaatii kehittäjältä oman Mac-tietokoneen sekä iPhone-puhelimen. Ilman näitä iOs-alustalle ei voitu kehittää mobiilisovellusta.
Android-sovellusta kehittäessä huomattiin, että Android Studio käyttää eri SDK-versioita kuin Cordova. Tämä loi ongelmia mobiilisovelluksen testauksessa. Tästä syystä on parempi tehdä sovellus valmiiksi käyttämällä vain selainta, ja vasta lopuksi testata sovellus puhelimessa.
Opinnäytetyön tarkoituksena oli selvittää, kuinka helppoa on toteuttaa Angular 2 -sovellus joka myöhemmin muutetaan Ionic 2 -sovellukseksi. Näin luotiin sekä nettisivusto että mobiilisovellus samalla koodipohjalla.
Näiden sovellusten ohella tuotettiin palvelinsovellus Node.js-alustalla. Opinnäytetyössä käytettiin Amazon Web Services -pilvipalveluita verkkosovelluksen ja palvelinsovelluksen käyttöönottoon.
Kehittämisen aikana huomattiin, että Angular 2 -ohjelmistokehyksen mukana tulevalla Angular-cli-komentorivityökalulla pystytään luomaan Angular 2 -sovellus helposti ja nopeasti, verrattuna aikaisempiin Angular-versioihin, jolloin ei ollut kyseistä komentorivityökalua. Samalla komentorivityökalulla voitiin myös luoda esimerkiksi lisää komponentteja sovellukseen. Angular-cli-komentorivityökalulla voitiin myös pystyttää testauspalvelin omalle tietokoneelle, jotta pystyttiin testaamaan ja kehittämään sovellusta selaimessa.
Ionic 2 -ohjelmistokehyksen mukana tulee oma Ionic-cli-komentorivityökalu, joka nopeuttaa Ionic 2 -sovelluksen kehitystä. Kehityksessä kuitenkin huomattiin, että siitä puuttuu joitain Angular-cli-työkalun ominaisuuksia. Näin katsottiin paremmaksi tehdä ensin Angular 2 -sovelluksessa jokin ominaisuus ja sitten kopioida se Ionic 2 -sovellukseen.
Opinnäytetyön tarkoituksena oli tehdä sekä Android- että iOs-alustoille sovellukset. Mutta kävi ilmi että iOs-alusta vaatii kehittäjältä oman Mac-tietokoneen sekä iPhone-puhelimen. Ilman näitä iOs-alustalle ei voitu kehittää mobiilisovellusta.
Android-sovellusta kehittäessä huomattiin, että Android Studio käyttää eri SDK-versioita kuin Cordova. Tämä loi ongelmia mobiilisovelluksen testauksessa. Tästä syystä on parempi tehdä sovellus valmiiksi käyttämällä vain selainta, ja vasta lopuksi testata sovellus puhelimessa.