Mi az API?

Tartalomjegyzék:

Mi az API?
Mi az API?

Videó: Mi az API?

Videó: Mi az API?
Videó: How to Fix Ubuntu Doesn't Boot After Installing in UEFI, No Bootable Device Ubuntu (Easy Tutorial) - YouTube 2024, Április
Anonim
Valószínűleg felismerte az "API" kifejezést. Az operációs rendszer, a webböngésző és az alkalmazásfrissítések gyakran új API-kat jelentenek a fejlesztők számára. De mi az API?
Valószínűleg felismerte az "API" kifejezést. Az operációs rendszer, a webböngésző és az alkalmazásfrissítések gyakran új API-kat jelentenek a fejlesztők számára. De mi az API?

Alkalmazás programozási felület

Az API kifejezés rövidítés, és az "Application Programming Interface" kifejezést jelenti.

Gondolj egy API-ra, mint egy éttermi menü. A menüben felsorolhatja a megrendelhetõ ételeket, valamint az egyes ételek leírását. Amikor megadja, hogy melyik menüpontot kívánja, az étterem konyhája végzi a munkát és elkészíti a kész ételeket. Nem tudod pontosan, hogy az étterem elkészíti az ételt, és nem igazán kell.

Hasonlóképpen, az API felsorolja a fejlesztők által használt műveletek számát, leírását pedig arról, hogy mit csinálnak. A fejlesztőnek nem feltétlenül kell tudnia, hogy például egy operációs rendszer hogyan építi fel és bemutatja a "Mentés másként" párbeszédpanelt. Csak azt kell tudniuk, hogy elérhető az alkalmazásukban.

Ez nem egy tökéletes metafora, hiszen a fejlesztőknek esetleg meg kell adniuk saját adataikat az API-nak, hogy megkapják az eredményeket, így talán inkább egy díszes étterem, ahol saját alkotórészeit is meg tudja adni, amelyekkel a konyha dolgozni fog.

De ez nagyjából pontos. Az API-k lehetővé teszik a fejlesztők számára, hogy időt takarítanak meg azzal, hogy kihasználják a platform végrehajtását, hogy megcsinálják a kegyetlen munkát. Ez segít csökkenteni a kódfejlesztők mennyiségét, és segítséget kell nyújtania az ugyanazon platformon lévő alkalmazások közötti konzisztencia kialakításához. Az API-k képesek vezérelni a hardver- és szoftvererőforrásokhoz való hozzáférést.

API-k az életet könnyebbé teszik a fejlesztőknek

Tegyük fel, hogy iPhone-alkalmazást szeretnél fejleszteni. Az Apple iOS operációs rendszere nagyszámú API-t kínál - mint minden más operációs rendszert -, hogy megkönnyítse Önt.

Ha egy web böngészőt szeretne beágyazni egy vagy több weboldal megmutatásához, például nem kell saját böngészőprogramot saját alkalmazásból programozni. A WKWebView API segítségével WebKit (Safari) böngészőobjektumot ágyazhat be az alkalmazásba.

Ha fényképeket vagy videókat szeretne rögzíteni az iPhone fényképezőgépről, akkor nem kell saját kezelőfelületet írni. A kamera API segítségével az iPhone beépített kameráját beágyazza az alkalmazásba. Ha nem léteznek olyan API-k, amelyek megkönnyítenék az alkalmazást, az alkalmazásfejlesztőknek saját fényképezőgép-szoftvert kell létrehozniuk, és meg kell értelmezniük a fényképezőgép hardverének bemeneteit. De az Apple operációsrendszer-fejlesztői mindezt keményen végezték, hogy a fejlesztők csak használhassák a fényképezőgép API-ját, hogy beágyazhassanak egy kamerát, majd építsék fel alkalmazásukat. És amikor az Apple javítja a fényképezőgép-API-t, az összes alkalmazást, amelyre támaszkodik, automatikusan kihasználja a javítást.

Ez minden platformra érvényes. Például szeretne párbeszédablakot létrehozni a Windows rendszeren? Van egy API erre. Szeretné támogatni az ujjlenyomat-hitelesítést az Android rendszeren? Ehhez van egy API is, így nem kell minden egyes Android gyártó ujjlenyomat-érzékelőjét tesztelni. A fejlesztőknek nem kell újból feltalálni a kereket.

Az API-k ellenőrzik az erőforrásokhoz való hozzáférést

Az API-kat használják továbbá a hardvereszközökhöz és szoftverfunkciókhoz való hozzáférés szabályozásához, amelyet az alkalmazásnak nem feltétlenül kell használni. Ezért az API-k gyakran nagy szerepet játszanak a biztonságban.

Például, ha valaha ellátogatott egy webhelyre, és a böngészőben olyan üzenetet észlelt, hogy a webhely megkérdezi a pontos helyét, akkor a webhely megpróbálja használni a geolocation API-t böngészőjében. A webböngészők ilyen API-kat mutatnak ki, hogy megkönnyítsék a webfejlesztők számára a tartózkodási helyük elérését - egyszerűen csak megkérdezik, hogy "hol van?", És a böngésző keményen dolgozik a GPS vagy a közeli Wi-Fi hálózatok elérésében, hogy megtalálja a fizikai helyét.

A böngészők ugyanakkor ezeket az információkat API-n keresztül is felfedik, mivel hozzáférést biztosítanak hozzá. Ha egy weboldal hozzáférést szeretne elérni a pontos fizikai helyéhez, az egyetlen módja annak, hogy megkapja azt a hely API-n keresztül. És ha egy webhely megpróbálja használni, akkor - a felhasználó - megadhatja vagy elutasíthatja ezt a kérelmet. A hardveres erőforrásokhoz, például a GPS-érzékelőhöz való hozzáférés egyetlen módja az API-n keresztül, így a böngésző felügyelheti a hardverhez való hozzáférést, és korlátozhatja, hogy az alkalmazások melyeket tudják tenni.
A böngészők ugyanakkor ezeket az információkat API-n keresztül is felfedik, mivel hozzáférést biztosítanak hozzá. Ha egy weboldal hozzáférést szeretne elérni a pontos fizikai helyéhez, az egyetlen módja annak, hogy megkapja azt a hely API-n keresztül. És ha egy webhely megpróbálja használni, akkor - a felhasználó - megadhatja vagy elutasíthatja ezt a kérelmet. A hardveres erőforrásokhoz, például a GPS-érzékelőhöz való hozzáférés egyetlen módja az API-n keresztül, így a böngésző felügyelheti a hardverhez való hozzáférést, és korlátozhatja, hogy az alkalmazások melyeket tudják tenni.

Ugyanezt az elvet alkalmazzák a modern mobil operációs rendszereken, mint az iOS és az Android, ahol a mobilalkalmazásoknak engedélyek vannak érvényesítve az API-k hozzáférésének ellenőrzésével. Ha például egy fejlesztő megpróbál hozzáférni a fényképezőgéphez a fényképezőgép API-ján keresztül, akkor megtagadhatja az engedélykérelmet, és az alkalmazásnak nem férhet hozzá eszközének fényképezőgépéhez.

A jogosultságokat használó fájlrendszerek - mint a Windows, a Mac és a Linux esetében - a fájlrendszer API-jával érvényesítik ezeket a jogosultságokat. Egy tipikus alkalmazásnak nincs közvetlen hozzáférése a nyers fizikai merevlemezhez. Ehelyett az alkalmazásnak hozzáférést kell biztosítania a fájlokhoz API-n keresztül.

API-kat használnak a szolgáltatások közötti kommunikációhoz

Az API-kat minden más okból is használják. Ha például valaha látott egy Google Térkép objektumot beágyazva egy webhelyre, akkor a webhely a Google Térkép API-t használja a térkép beágyazásához. A Google ilyen módon jeleníti meg az API-kat a webfejlesztőknek, akik ezt követően az API-kat használhatják a komplex objektumok weboldalukon való megjelenítéséhez. Ha az ilyen API-k nem léteznek, a fejlesztőknek talán saját térképeket kell létrehozniuk, és saját térképadatokat kell megadniuk, hogy csak egy kis interaktív térképet helyezzenek el egy webhelyen.

És mivel API-ként működik, a Google a harmadik felek webhelyein is szabályozhatja a hozzáférést a Google Térképhez, biztosítva, hogy azok következetes módon használják, és ne próbálkozzon például a Google Térkép webhelyét bemutató kereten.

Ez sok különböző online szolgáltatásra vonatkozik. Vannak olyan API-k, amelyek a Google Fordítóhoz fordíthatnak szöveges fordítást, vagy beágyazhatják a Facebook megjegyzéseit vagy tweetjeit a Twitteren egy weboldalon.

Az OAuth-szabvány számos API-t is meghatároz, amelyek lehetővé teszik, hogy egy másik szolgáltatással - például a Facebook, a Google vagy a Twitter fiókokkal - bejelentkezzenek egy másik webhelyre, anélkül, hogy egy új felhasználói fiókot létrehoznának az adott webhelyen. Az API-k olyan szabványos szerződések, amelyek meghatározzák, hogy a fejlesztők miként kommunikálnak egy szolgáltatással, és milyen kimenetellel kell számolniuk a fejlesztők számára.

Ha ezt a folyamatot megkaptad, jobb ötleted lesz arról, mi az API. Végül nem kell tudni, hogy mi az API, hacsak nem vagy fejlesztő. De ha látja, hogy egy szoftverplatform vagy szolgáltatás új API-kat adott különféle hardverekhez vagy szolgáltatásokhoz, könnyebbé kell tenni a fejlesztőknek, hogy kihasználják az ilyen funkciók előnyeit.

Ajánlott: