Rest-rajapinnan toteutus modernein menetelmin
Karnaranta, Veeti (2024)
Karnaranta, Veeti
2024
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-2024080924107
https://urn.fi/URN:NBN:fi:amk-2024080924107
Tiivistelmä
Opinnäytetyö on osa tieto- ja viestintätekniikan insinöörin opintosuunnitelmaa ja se toteutettiin yhteistyössä OP Osuuskunnan kanssa keväällä 2024. Aiemmin olen suorittanut tuotekehitysprojekteja OP Osuuskunnassa samassa tiimissä. Työ tarjoaa kattavan tietopaketin modernista rajapintakehityksestä, joka on olennainen osa modernien sovellusten rakennetta ja mahdollistaa eri järjestelmien välisen kommunikaation ja tiedonsiirron.
Työssä tutkittiin modernissa rajapintakehityksessä käytettyjä työkaluja ja teknologioita, keskittyen erityisesti REST-arkkitehtuuriin ja sen käytännön toteutukseen Spring Boot -kehystä hyödyntäen. Ensimmäisessä luvussa käsiteltiin ohjelmointirajapintoja (API) ja REST-arkkitehtuuria. Toisessa luvussa keskityttiin Continuous Integration- ja Continuous Deployment (CI/CD) -käytäntöihin.
Kolmannessa luvussa tarkasteltiin erilaisia työkaluja ja teknologioita rajapintojen kehityksessä ja hallinnassa, kuten Spring Frameworkia ja sen osakomponentteja, Git-versionhallintajärjestelmää sekä Swaggerin ja Postmanin kaltaisia työkaluja dokumentointiin ja testaukseen. Neljännessä luvussa esiteltiin konkreettinen esimerkki REST-rajapinnan toteutuksesta Spring Bootilla, ja käytiin vaiheittain läpi suunnittelu, rakentaminen, testaus ja käyttöönotto.
Opinnäytetyössä saavutettiin merkittäviä tuloksia. Pystyttiin toteuttamaan toimiva REST-rajapinta, joka vastasi OP Osuuskunnan tarpeita ja integraatiovaatimuksia. Työ syvensi omaa ymmärrystäni rajapintakehityksestä ja tarjosi lukijalle selkeän kuvan teknologioista sekä työkaluista, joita käytetään modernissa rajapintakehityksessä .
Työn haasteet liittyivät sen laajuuteen, minkä vuoksi tiettyjä aiheita, kuten Kubernetesin ja Dockerin hyödyntämistä, ei käsitelty niin syvällisesti kuin olin ajatellut. Jatkotutkimuksessa näiden teknologioiden tarkastelu toisi lisäarvoa. Työ auttoi ymmärtämään, kuinka moderneja työkaluja ja teknologioita hyödynnetään rajapintakehityksessä, ja se on ollut merkityksellinen ammatillisen kehitykseni kannalta. Työ tarjosi kattavan katsauksen moderniin rajapintakehitykseen ja sen vaatimuksiin työkaluihin ja menetelmiin, vahvistaen ammatillista osaamistani ja antaen arvokkaita näkemyksiä tehokkaan ohjelmistokehitysprosessin toteuttamiseen.
Työssä tutkittiin modernissa rajapintakehityksessä käytettyjä työkaluja ja teknologioita, keskittyen erityisesti REST-arkkitehtuuriin ja sen käytännön toteutukseen Spring Boot -kehystä hyödyntäen. Ensimmäisessä luvussa käsiteltiin ohjelmointirajapintoja (API) ja REST-arkkitehtuuria. Toisessa luvussa keskityttiin Continuous Integration- ja Continuous Deployment (CI/CD) -käytäntöihin.
Kolmannessa luvussa tarkasteltiin erilaisia työkaluja ja teknologioita rajapintojen kehityksessä ja hallinnassa, kuten Spring Frameworkia ja sen osakomponentteja, Git-versionhallintajärjestelmää sekä Swaggerin ja Postmanin kaltaisia työkaluja dokumentointiin ja testaukseen. Neljännessä luvussa esiteltiin konkreettinen esimerkki REST-rajapinnan toteutuksesta Spring Bootilla, ja käytiin vaiheittain läpi suunnittelu, rakentaminen, testaus ja käyttöönotto.
Opinnäytetyössä saavutettiin merkittäviä tuloksia. Pystyttiin toteuttamaan toimiva REST-rajapinta, joka vastasi OP Osuuskunnan tarpeita ja integraatiovaatimuksia. Työ syvensi omaa ymmärrystäni rajapintakehityksestä ja tarjosi lukijalle selkeän kuvan teknologioista sekä työkaluista, joita käytetään modernissa rajapintakehityksessä .
Työn haasteet liittyivät sen laajuuteen, minkä vuoksi tiettyjä aiheita, kuten Kubernetesin ja Dockerin hyödyntämistä, ei käsitelty niin syvällisesti kuin olin ajatellut. Jatkotutkimuksessa näiden teknologioiden tarkastelu toisi lisäarvoa. Työ auttoi ymmärtämään, kuinka moderneja työkaluja ja teknologioita hyödynnetään rajapintakehityksessä, ja se on ollut merkityksellinen ammatillisen kehitykseni kannalta. Työ tarjosi kattavan katsauksen moderniin rajapintakehitykseen ja sen vaatimuksiin työkaluihin ja menetelmiin, vahvistaen ammatillista osaamistani ja antaen arvokkaita näkemyksiä tehokkaan ohjelmistokehitysprosessin toteuttamiseen.