Kas ir API?

Jūs, iespējams, esat redzējis terminu “API” parādīšanos. Operētājsistēmas, tīmekļa pārlūka un lietotņu atjauninājumi bieži paziņo par jauniem API izstrādātājiem. Bet kas ir API?

Lietojumprogrammu saskarne

Termins API ir akronīms, un tas nozīmē “Lietojumprogrammu saskarne”.

Iedomājieties tādu API kā ēdienkarte restorānā. Izvēlnē ir saraksts ar ēdieniem, kurus varat pasūtīt, kā arī katra ēdiena apraksts. Kad jūs norādāt, kādas ēdienkartes vēlaties, restorāna virtuve veic darbu un nodrošina dažus gatavus ēdienus. Jūs precīzi nezināt, kā restorāns gatavo šo ēdienu, un jums tas nav īsti vajadzīgs.

Līdzīgi API uzskaita virkni darbību, kuras izstrādātāji var izmantot, kā arī to darbības aprakstu. Izstrādātājam nav obligāti jāzina, kā, piemēram, operētājsistēma izveido un parāda dialoglodziņu “Saglabāt kā”. Viņiem vienkārši jāzina, ka tas ir pieejams lietošanai viņu lietotnē.

Šī nav perfekta metafora, jo, lai iegūtu rezultātus, izstrādātājiem, iespējams, būs jāsniedz savi dati API, tāpēc, iespējams, tas vairāk līdzinās izsmalcinātam restorānam, kur jūs varat nodrošināt dažas savas sastāvdaļas, ar kurām virtuve strādās.

Bet tas kopumā ir precīzi. API ļauj izstrādātājiem ietaupīt laiku, izmantojot platformas ieviešanas priekšrocības, lai veiktu sīkumu. Tas palīdz samazināt koda izstrādātājiem nepieciešamo izveides apjomu, kā arī palīdz nodrošināt lielāku konsekvenci visās tās pašas platformas lietotnēs. API var kontrolēt piekļuvi aparatūras un programmatūras resursiem.

API atvieglo izstrādātāju dzīvi

Pieņemsim, ka vēlaties izstrādāt lietotni iPhone. Apple iOS operētājsistēma nodrošina lielu skaitu API - tāpat kā jebkura cita operētājsistēma -, lai to atvieglotu.

Ja vēlaties iegult tīmekļa pārlūkprogrammu, lai parādītu, piemēram, vienu vai vairākas tīmekļa lapas, jums nav jāprogramē savs tīmekļa pārlūks tikai no jauna tikai jūsu lietojumprogrammai. Jūs izmantojat WKWebView API, lai savā lietojumprogrammā iegultu WebKit (Safari) pārlūka objektu.

Ja vēlaties uzņemt fotoattēlus vai videoklipus no iPhone kameras, jums nav jāraksta savs kameras interfeiss. Jūs izmantojat kameras API, lai savā lietotnē iegultu iPhone iebūvēto kameru. Ja API nebūtu, lai to izdarītu viegli, lietotņu izstrādātājiem būtu jāizveido sava kameras programmatūra un jāinterpretē kameras aparatūras ievadi. Bet Apple operētājsistēmas izstrādātāji ir paveikuši visu šo smago darbu, lai izstrādātāji varētu vienkārši izmantot kameras API, lai iegultu kameru, un pēc tam turpināt veidot savu lietotni. Kad Apple uzlabo kameras API, visas lietotnes, kas uz to paļaujas, automātiski izmantos šo uzlabojumu.

Tas attiecas uz katru platformu. Piemēram, vai vēlaties izveidot dialoglodziņu sistēmā Windows? Tam ir API. Vai vēlaties atbalstīt pirkstu nospiedumu autentifikāciju operētājsistēmā Android? Tam ir arī API, tāpēc jums nav jāpārbauda katra cita Android ražotāja pirkstu nospiedumu sensors. Izstrādātājiem nav atkārtoti jāizgudro ritenis.

API kontrolē piekļuvi resursiem

API izmanto arī, lai kontrolētu piekļuvi aparatūras ierīcēm un programmatūras funkcijām, kuru lietošanai lietojumprogrammai, iespējams, nav atļaujas. Tāpēc API bieži spēlē lielu lomu drošībā.

SAISTĪTS: Kā pārtraukt vietņu pieprasīšanu pēc jūsu atrašanās vietas

Piemēram, ja jūs kādreiz esat apmeklējis vietni un pārlūkprogrammā esat redzējis ziņojumu, ka vietne lūdz redzēt precīzu jūsu atrašanās vietu, šī vietne mēģina izmantot ģeogrāfiskās atrašanās vietas API jūsu tīmekļa pārlūkprogrammā. Tīmekļa pārlūkprogrammas atklāj šādas API, lai tīmekļa izstrādātājiem būtu viegli piekļūt jūsu atrašanās vietai - viņi var vienkārši pajautāt “Kur tu esi?” un pārlūks veic smagu darbu, piekļūstot GPS vai tuvējiem Wi-Fi tīkliem, lai atrastu jūsu fizisko atrašanās vietu.

Tomēr pārlūkprogrammas arī atklāj šo informāciju, izmantojot API, jo ir iespējams kontrolēt piekļuvi tai. Kad vietne vēlas piekļūt jūsu precīzai fiziskajai atrašanās vietai, vienīgais veids, kā viņi to var iegūt, ir atrašanās vietas API. Kad vietne mēģina to izmantot, jūs - lietotājs - varat izvēlēties atļaut vai noraidīt šo pieprasījumu. Vienīgais veids, kā piekļūt aparatūras resursiem, piemēram, GPS sensoram, ir API, tāpēc pārlūkprogramma var kontrolēt piekļuvi aparatūrai un ierobežot lietotņu iespējas.

Šo pašu principu izmanto mūsdienu mobilajās operētājsistēmās, piemēram, iOS un Android, kur mobilajām lietotnēm ir atļaujas, kuras var izpildīt, kontrolējot piekļuvi API. Piemēram, ja izstrādātājs mēģina piekļūt kamerai, izmantojot kameras API, varat noraidīt atļaujas pieprasījumu, un lietotnei nav iespējas piekļūt jūsu ierīces kamerai.

Failu sistēmām, kas izmanto atļaujas - tāpat kā Windows, Mac un Linux - šīs atļaujas nodrošina failu sistēmas API. Tipiskai lietojumprogrammai nav tiešas piekļuves neapstrādātam fiziskajam cietajam diskam. Tā vietā lietotnei ir jāpiekļūst failiem, izmantojot API.

API tiek izmantotas saziņai starp pakalpojumiem

API tiek izmantoti arī visu citu iemeslu dēļ. Piemēram, ja jūs kādreiz esat redzējis Google Maps objektu, kas ir iegults vietnē, šī vietne šīs kartes iegulšanai izmanto Google Maps API. Google šādi API saskaras ar tīmekļa izstrādātājiem, kuri pēc tam var izmantot API, lai izveidotu sarežģītus objektus tieši savā vietnē. Ja šāda veida API nepastāv, izstrādātājiem, iespējams, būs jāizveido savas kartes un jāsniedz savi karšu dati, lai tikai ievietotu nelielu interaktīvu karti vietnē.

Tā kā tā ir API, Google var kontrolēt piekļuvi Google Maps trešo pušu vietnēs, nodrošinot, ka tās to izmanto konsekventi, nevis mēģinot netīri iegult rāmi, kas parāda, piemēram, Google Maps vietni.

Tas attiecas uz daudziem dažādiem tiešsaistes pakalpojumiem. Ir API, lai pieprasītu teksta tulkošanu no Google tulkotāja vai vietnes Facebook komentāru vai tvītu iegulšanu vietnē.

SAISTĪTĀS: Kas ir OAuth? Kā darbojas šīs Facebook, Twitter un Google pierakstīšanās pogas

OAuth standarts nosaka arī vairākus API, kas ļauj pierakstīties vietnē, izmantojot citu pakalpojumu, piemēram, izmantot savus Facebook, Google vai Twitter kontus, lai pierakstītos jaunā vietnē, neveidojot jaunu lietotāja kontu tikai šai vietnei. . API ir standarta līgumi, kas nosaka, kā izstrādātāji sazinās ar pakalpojumu, un kāda veida produkciju šiem izstrādātājiem vajadzētu sagaidīt.

Ja esat to izgājis, jums būs labāka ideja par to, kas ir API. Galu galā jums nav īsti jāzina, kas ir API, ja vien neesat izstrādātājs. Bet, ja redzat, ka programmatūras platforma vai pakalpojums ir pievienojis jaunas API dažādām aparatūrām vai pakalpojumiem, izstrādātājiem vajadzētu būt vieglāk izmantot šādas funkcijas.

Attēlu kredīts: patpitchaya / Shutterstock.com.