Skip to main content

Mis on API?

Mis on API?

Geoffrey Carr

Olete tõenäoliselt näinud mõistet "API" tulla. Operatsioonisüsteem, veebibrauser ja rakenduste värskendused deklareerivad sageli arendajatele uusi API-sid. Kuid mis on API?

Rakendusprogrammide liides

Termin API on akronüüm ja see tähistab "Rakenduse programmeerimisliidest".

Mõelge API-ga nagu restorani menüü. Menüüs on nimekiri nõudest, mida saate tellida, koos iga toiduga. Kui määrate millised menüüelemendid soovid, teeb restorani köök tööd ja pakub teile valmis toidud. Te ei tea täpselt, kuidas restoran seda toitu valmistab, ja te pole seda tegelikult vaja.

API-s on samuti loetletud hulgaliselt toiminguid, mida arendajad saavad kasutada, koos kirjeldusega, mida nad teevad. Arendaja ei pea tingimata teadma, kuidas näiteks opsüsteem koostab ja esitab dialoogiboksi "Salvesta kui". Nad peavad lihtsalt teadma, et see on nende rakenduses kasutamiseks saadaval.

See ei ole ideaalne metafoor, kuna arendajad võivad tulemuste saamiseks oma API-le anda oma andmeid API-le, mistõttu võib-olla on see rohkem kui mõnus restoran, kus saate pakkuda mõnda oma koostisainet, millega köök töötab.

Kuid see on üldiselt täpne. API-programmid võimaldavad arendajatel säästa aega, kasutades selleks platvormi rakendust, et teha nõtk-puderätikuid. See aitab vähendada, kui palju koodi arendajad peavad looma, ning samuti aitab see sama platvormi rakenduste jaoks luua järjepidevust. API-d saavad kontrollida riistvara- ja tarkvararessurssidele juurdepääsu.

API-programmid muudavad elu arendajatele lihtsamaks

Oletame, et soovite iPhone'i jaoks rakendust luua. Apple iOS-i operatsioonisüsteem pakub suurt hulka API-sid, nagu iga teine ​​operatsioonisüsteem teeb, et muuta see teie jaoks lihtsamaks.

Näiteks, kui soovite veebibrauseri sisse lülitada, et näidata ühte või mitut veebilehte, siis ei pea te oma rakenduse jaoks oma veebibrauserit nullist välja programmeerima. Rakenduses Webkit (Safari) brauseri objekti sisestamiseks kasutate WKWebView API-d.

Kui soovite iPhone'i kaamerast fotosid ja videoid jäädvustada, ei pea te oma kaamera liidest kirjutama. Rakenduses iPhone'i sisseehitatud kaamera sisestamiseks kasutate kaamera API-d. Kui seda hõlpsasti ei tohiks kasutada API-sid, peaksid rakenduse arendajad looma oma kaamera tarkvara ja tõlgendama kaamera riistvara sisendit. Kuid Apple'i operatsioonisüsteemi arendajad on seda kõvasti tööd teinud, nii et arendajad saavad fotoaparaadi varjamiseks lihtsalt kasutada kaamera API-d ja seejärel oma rakenduse loomisega edasi minna. Ja kui Apple parandab kaamera API-d, kasutavad kõik sellel põhinevad rakendused seda automaatselt.

See kehtib iga platvormi kohta. Näiteks kas soovite Windowsis luua dialoogi? Selle jaoks on API. Kas soovite Android-is sõrmejälgede autentimist toetada? Selle jaoks on olemas ka API, nii et teil ei ole vaja testida kõiki erinevaid Androidi tootja sõrmejälgede andureid. Arendajatel ei ole vaja uuesti ratast üles leida.

API-liidesed Juurdepääs ressurssidele

API-sid kasutatakse ka riistvaraseadmete ja tarkvarafunktsioonide juurdepääsu kontrollimiseks, mida rakendusel ei pruugi tingimata olla luba kasutada. Sellepärast mängivad API-d sageli turvalisuses olulist rolli.

Näiteks kui olete külastanud veebisaiti ja näinud oma brauseris sõnumit, et veebisait küsib teie täpset asukohta, proovib see veebibrauseris geolokatsiooni API-d kasutada. Veebi brauserid pakuvad selliseid API-sid, mis võimaldavad veebiarendajatel teie asukohta juurde pääseda, saavad nad lihtsalt küsida, kus te olete? Ja brauser teeb fikseeritud asukoha leidmiseks raske töö GPS-i või läheduses asuvatele WiFi-võrkudele.

Kuid brauserid pakuvad ka seda teavet API-ga, kuna seda saab kontrollida. Kui veebisait soovib juurdepääsu teie täpsele füüsilisele asukohale, on see ainus viis, kuidas nad saavad seda kasutada, kasutades asukoha API-d. Kui veebisait proovib seda kasutada, saab kasutaja-kasutaja selle taotluse lubada või keelata. Ainus võimalus juurdepääsuks riistvaralistele andmetele nagu GPS-andur on läbi API-i, nii et brauser saab kontrollida riistvarale juurdepääsu ja piiravad, mida rakendused saavad teha.

Seda põhimõtet kasutavad moodsad mobiilsed operatsioonisüsteemid, nagu iOS ja Android, kus mobiilirakendustel on õigused, mida saab jõustada, kontrollides juurdepääsu API-le. Näiteks kui arendaja proovib kaamerat kasutada kaamera API-liidese kaudu, võite keelduda loataotlusest ja rakendusel pole juurdepääsu oma seadme kaameratele.

Failisüsteemid, mis kasutavad õigusi - nagu nad teevad Windowsis, Macis ja Linuxis - on need failid, mida jõustatakse failisüsteemi API-ga. Tavalisel rakendusel puudub otsene juurdepääs toores füüsilisele kõvakettale. Selle asemel peab rakendus juurdepääsu API faile.

Teenustevahetuseks kasutatakse API-sid

API-sid kasutatakse ka mitmel põhjusel. Näiteks kui olete kunagi näinud veebisaidil manustatud Google Mapsi objekti, kasutab see veebisait selle kaardi manustamiseks Google Mapsi API-d. Google näeb selliseid API-sid selleni veebiarendajatele, kes saavad siis kasutada API-sid keeruliste objektide hõõrumiseks oma veebisaidil. Kui selliseid API-sid ei eksisteeri, peaksid arendajad oma veebikaardile pisut interaktiivse kaardi loomiseks vajalikuks looma oma kaardid ja esitama oma kaardiandmed.

Ja kuna see on API, võib Google kontrollida kolmandate osapoolte veebisaitidele juurdepääsu Google Mapsi, tagades, et nad kasutavad seda järjekindlalt, mitte proovida näiteks faile, mis näitab Google Mapsi veebisaiti.

See kehtib paljude erinevate veebiteenuste kohta. Google'i tõlke tekstitöötluse või Facebooki kommentaaride või tweeti sisestamise kohta Twitterist veebisaidil on API-sid.

OAuth-standard määratleb ka mitu API-sid, mis lubavad teil teise veebisaidiga sisse logida, näiteks oma Facebook, Google'i või Twitteri kontode kasutamiseks uuele veebisaidile sisselogimiseks, ilma sellekohase uue kasutajakonto loomata . API-d on standardlepingud, mis määravad kindlaks, kuidas arendajad suhtlevad teenusega, ja millist toodangut peaksid need arendajad ootama tagasi saama.


Kui olete selle läbi saanud, saate paremini mõista, milline API on. Lõppkokkuvõttes ei pea te tegelikult teadma, mis API on, kui olete arendaja. Kuid kui näete, et tarkvaraplatvorm või -teenus on lisanud uusi riistvara või teenuseid sisaldavaid API-sid, peaks arendajatel olema selliseid funktsioone ära kasutada.

Link
Plus
Send
Send
Pin