Mikä on API?

Olet todennäköisesti nähnyt sanan ”API” keksiä. Käyttöjärjestelmä-, selain- ja sovelluspäivitykset ilmoittavat usein uusista sovellusliittymistä kehittäjille. Mutta mikä on API?

Sovellusohjelmointirajapinta

Termi API on lyhenne, ja se tarkoittaa "Application Programming Interface".

Ajattele API: ta, kuten ravintolan ruokalista. Valikossa on luettelo tilaamistasi annoksista sekä kuvaus jokaisesta ruokalajista. Kun määrität haluamasi ruokalistat, ravintolan keittiö tekee työn ja tarjoaa sinulle valmiita ruokia. Et tiedä tarkalleen, miten ravintola valmistaa ruokaa, eikä sinun tarvitse sitä.

Vastaavasti sovellusliittymä listaa joukon toimintoja, joita kehittäjät voivat käyttää, sekä kuvauksen tekemisestään. Kehittäjän ei välttämättä tarvitse tietää, kuinka esimerkiksi käyttöjärjestelmä rakentaa ja näyttää "Tallenna nimellä" -valintaikkunan. Heidän on vain tiedettävä, että se on käytettävissä heidän sovelluksessaan.

Tämä ei ole täydellinen metafora, koska kehittäjien on ehkä toimitettava omat tietonsa API: lle saadakseen tulokset, joten ehkä se on enemmän kuin hieno ravintola, jossa voit tarjota joitain omia ainesosia, joiden kanssa keittiö toimii.

Mutta se on pääosin tarkka. Sovellusliittymien avulla kehittäjät voivat säästää aikaa hyödyntämällä alustan toteutusta tekemällä hienoa työtä. Tämä auttaa vähentämään kehittäjien tarvetta luoda koodia ja auttaa lisäämään yhtenäisyyttä sovellusten välillä samalla alustalla. API: t voivat hallita laitteisto- ja ohjelmistoresurssien käyttöä.

API: t helpottavat kehittäjien elämää

Oletetaan, että haluat kehittää sovelluksen iPhonelle. Applen iOS-käyttöjärjestelmä tarjoaa suuren määrän sovellusliittymiä - kuten kaikki muutkin käyttöjärjestelmät - tämän helpottamiseksi.

Jos haluat upottaa verkkoselaimen näyttämään esimerkiksi yhtä tai useampaa verkkosivua, sinun ei tarvitse ohjelmoida omaa verkkoselainta tyhjästä vain sovellustasi varten. Upotat WebKit (Safari) -selainobjektin sovellukseesi WKWebView-sovellusliittymän avulla.

Jos haluat kaapata valokuvia tai videoita iPhonen kamerasta, sinun ei tarvitse kirjoittaa omaa kamerasi käyttöliittymää. Upotat iPhonen sisäänrakennetun kameran sovellukseesi kameran sovellusliittymän avulla. Jos sovellusliittymiä ei ole olemassa tämän helpottamiseksi, sovelluskehittäjien on luotava oma kameran ohjelmisto ja tulkittava kameralaitteiston syötteet. Mutta Applen käyttöjärjestelmän kehittäjät ovat tehneet kaiken tämän kovan työn, joten kehittäjät voivat vain käyttää kameran sovellusliittymää kameran upottamiseen ja sitten jatkaa sovelluksensa rakentamista. Ja kun Apple parantaa kameran sovellusliittymää, kaikki siihen luottavat sovellukset hyödyntävät parannusta automaattisesti.

Tämä koskee kaikkia alustoja. Haluatko esimerkiksi luoda valintaikkunan Windowsissa? Siellä on API. Haluatko tukea sormenjälkitodennusta Androidissa? Siellä on myös API, joten sinun ei tarvitse testata jokaisen eri Android-valmistajan sormenjälkitunnistinta. Kehittäjien ei tarvitse keksiä pyörää uudestaan ​​ja uudestaan.

API: t ohjaavat resurssien käyttöä

Sovellusliittymiä käytetään myös valvomaan pääsyä laitteisiin ja ohjelmistotoimintoihin, joita sovelluksella ei välttämättä ole lupaa käyttää. Siksi sovellusliittymillä on usein suuri rooli tietoturvassa.

RELATED: Kuinka estää verkkosivustoja pyytämästä sijaintiasi

Esimerkiksi, jos olet joskus käynyt verkkosivustolla ja nähnyt selaimessasi viestin, että verkkosivusto pyytää tarkkaa sijaintiasi, kyseinen verkkosivusto yrittää käyttää maantieteellisen sijainnin sovellusliittymää selaimessasi. Verkkoselaimet paljastavat tällaiset sovellusliittymät, jotta Web-kehittäjien on helppo käyttää sijaintiasi - he voivat vain kysyä "missä olet?" ja selain tekee kovaa työtä päästäksesi GPS: hen tai läheisiin Wi-Fi-verkkoihin fyysisen sijaintisi löytämiseksi.

Selaimet kuitenkin paljastavat nämä tiedot myös sovellusliittymän kautta, koska niiden käyttöä on mahdollista hallita. Kun verkkosivusto haluaa käyttää tarkkaa fyysistä sijaintiasi, ainoa tapa saada se on sijainnin sovellusliittymän kautta. Ja kun verkkosivusto yrittää käyttää sitä, sinä - käyttäjä - voit sallia tai hylätä tämän pyynnön. Ainoa tapa käyttää laitteistoresursseja, kuten GPS-anturia, on API: n kautta, joten selain voi hallita laitteiston käyttöä ja rajoittaa sovellusten mahdollisuuksia.

Tätä samaa periaatetta käytetään nykyaikaisissa mobiilikäyttöjärjestelmissä, kuten iOS ja Android, joissa mobiilisovelluksilla on käyttöoikeudet, jotka voidaan valvoa hallitsemalla käyttöliittymien käyttöä. Esimerkiksi, jos kehittäjä yrittää käyttää kameraa kameran sovellusliittymän kautta, voit kieltää lupapyynnön, eikä sovelluksella ole mitään tapaa käyttää laitteesi kameraa.

Tiedostojärjestelmillä, jotka käyttävät käyttöoikeuksia - kuten Windows-, Mac- ja Linux-käyttöjärjestelmillä - tiedostojärjestelmän sovellusliittymä pakottaa nämä oikeudet. Tyypillisellä sovelluksella ei ole suoraa pääsyä fyysiselle fyysiselle kiintolevylle. Sen sijaan sovelluksen on käytettävä tiedostoja API: n kautta.

Sovellusliittymiä käytetään palvelujen väliseen viestintään

Sovellusliittymiä käytetään myös kaikenlaisista muista syistä. Esimerkiksi, jos olet joskus nähnyt verkkosivustoon upotetun Google Maps -objektin, kyseinen verkkosivusto käyttää Google Maps -sovellusliittymää kyseisen kartan upottamiseen. Google paljastaa tällaiset sovellusliittymät verkkokehittäjille, jotka voivat sitten käyttää sovellusliittymiä monimutkaisten objektien luomiseen suoraan verkkosivustolleen. Jos tällaisia ​​sovellusliittymiä ei ole, kehittäjien on ehkä luotava omat karttansa ja toimitettava omat karttatietonsa vain laittaakseen pienen interaktiivisen kartan verkkosivustolle.

Ja koska se on sovellusliittymä, Google voi hallita pääsyä Google Mapsiin kolmansien osapuolten verkkosivustoilla varmistaen, että ne käyttävät sitä johdonmukaisesti sen sijaan, että yrittäisivät upottaa kehystä, joka näyttää esimerkiksi Google Maps -sivuston.

Tämä koskee monia erilaisia ​​verkkopalveluja. On olemassa sovellusliittymiä tekstikäännösten pyytämiseen Google Kääntäjältä tai Facebook-kommenttien tai Twitterin upottamiseen verkkosivustoon.

RELATED: Mikä on OAuth? Kuinka nämä Facebook-, Twitter- ja Google-kirjautumispainikkeet toimivat

OAuth-standardi määrittelee myös useita sovellusliittymiä, joiden avulla voit kirjautua verkkosivustolle toisella palvelulla - esimerkiksi käyttää Facebook-, Google- tai Twitter-tiliäsi kirjautumalla uuteen verkkosivustoon luomatta uutta käyttäjätiliä vain kyseiselle sivustolle. . API: t ovat vakiosopimuksia, jotka määrittelevät, miten kehittäjät kommunikoivat palvelun kanssa, ja minkälaisen tuotoksen heidän tulee odottaa saavansa takaisin.

Jos olet käynyt läpi tämän, sinulla on parempi käsitys API: sta. Viime kädessä sinun ei tarvitse tietää, mikä API on, ellet ole kehittäjä. Mutta jos huomaat, että ohjelmistoalusta tai palvelu on lisännyt uusia sovellusliittymiä erilaisille laitteistoille tai palveluille, kehittäjien pitäisi olla helpompi hyödyntää tällaisia ​​ominaisuuksia.

Kuvahyvitys: patpitchaya / Shutterstock.com.