Avoimen rajapinnan suunnittelu ja sen hyvät käytännöt
Hernesniemi, Eeli (2023)
Hernesniemi, Eeli
2023
Tieto- ja sähkötekniikan kandidaattiohjelma - Bachelor's Programme in Computing and Electrical Engineering
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2023-04-21
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202303283234
https://urn.fi/URN:NBN:fi:tuni-202303283234
Tiivistelmä
Rajapinta on sovelluksen osien tai kokonaisten sovellusten keskustelukanava ja avoimella rajapinnalla tarkoitetaan rajapintaa, joka on kaikkien käytettävissä. Internetin käyttäjämäärän kasvuja sovelluksien arkkitehtuurien muutos pirstaleisempaan muotoon on asettanut enemmän vaatimuksia avoimille rajapinnoille. Monet internetin sovellukset ovat nykyään riippuvaisia ulkoisista avoimista rajapinnoista ja esiin on noussut maksullisia rajapintoja, jotka kilpailevat keskenäänkäyttäjistä. On tärkeää, että nämä rajapinnat ovat helppokäyttöisiä, nopeita ja hyvin dokumentoituja saavuttaakseen ison käyttäjämäärän.
Rajapintaa toteuttaessa tulee miettiä sen käyttökohdetta ja kohdeyleisöä. Rajapinta usein tehdään koneluettaviksi, mutta joissakin tapauksissa suositaan enemmän rajapinnan vastausnopeutta, kun taas toisissa helppoa liittymistä. On tärkeää, että rajapintaa alkaa rakentamaan oikealla teknologialla alusta asti, sillä rajapinnan vaihtaminen teknologiasta toiseen on työlästä. Käytetyin vaihtoehto tällä hetkellä on REST-arkkitehtuurimalli, jonka rinnalle on lähiaikoina noussut lisää kilpailijoita.
Työssä huomataan, että iästään riippumatta REST on vieläkin hyvä vaihtoehto uusille avoimille rajapinnoille. Vuonna 2000 syntynyt arkkitehtuurimalli ei sido käyttäjiä tiettyyn teknologiaan, joten sen ajatusmallit on helppo ottaa käyttöön vielä nykyäänkin. SOAP on ollut RESTin kilpailija jo pitkään, mutta ison lähetetyn datamäärän ja vaikealukuisen syntaksinsa takia sitä harvemmin valitaan uusille rajapinnoille.
Uutena tulokkaana on GraphQL, joka säilyttää RESTin helppokäyttöisyyden ja luettavuuden, mutta samalla pystyy vähentämään lähetetyn datan määrää ja kutsumääriä. GraphQL:n vahvuuksista isoimpana on monien olioiden ja niiden ominaisuuksien kysely yhdellä kyselylausekkeella, mikä helpottaa ja nopeuttaa rajapinnan käyttöä. Odotan, että GraphQL jatkaa kasvuaan ja saa uusia kilpailijoita tulevaisuudessa.
Rajapintaa toteuttaessa tulee miettiä sen käyttökohdetta ja kohdeyleisöä. Rajapinta usein tehdään koneluettaviksi, mutta joissakin tapauksissa suositaan enemmän rajapinnan vastausnopeutta, kun taas toisissa helppoa liittymistä. On tärkeää, että rajapintaa alkaa rakentamaan oikealla teknologialla alusta asti, sillä rajapinnan vaihtaminen teknologiasta toiseen on työlästä. Käytetyin vaihtoehto tällä hetkellä on REST-arkkitehtuurimalli, jonka rinnalle on lähiaikoina noussut lisää kilpailijoita.
Työssä huomataan, että iästään riippumatta REST on vieläkin hyvä vaihtoehto uusille avoimille rajapinnoille. Vuonna 2000 syntynyt arkkitehtuurimalli ei sido käyttäjiä tiettyyn teknologiaan, joten sen ajatusmallit on helppo ottaa käyttöön vielä nykyäänkin. SOAP on ollut RESTin kilpailija jo pitkään, mutta ison lähetetyn datamäärän ja vaikealukuisen syntaksinsa takia sitä harvemmin valitaan uusille rajapinnoille.
Uutena tulokkaana on GraphQL, joka säilyttää RESTin helppokäyttöisyyden ja luettavuuden, mutta samalla pystyy vähentämään lähetetyn datan määrää ja kutsumääriä. GraphQL:n vahvuuksista isoimpana on monien olioiden ja niiden ominaisuuksien kysely yhdellä kyselylausekkeella, mikä helpottaa ja nopeuttaa rajapinnan käyttöä. Odotan, että GraphQL jatkaa kasvuaan ja saa uusia kilpailijoita tulevaisuudessa.
Kokoelmat
- Kandidaatintutkielmat [9819]