Pravděpodobně jste spatřili výraz "API". Operační systém, webový prohlížeč a aktualizace aplikací často oznamují vývojářům nové rozhraní API. Ale co je to API?

Rozhraní aplikačního programování

Termín API je zkratka a znamená "aplikační programovací rozhraní".

Přemýšlejte o rozhraní API jako o menu v restauraci. Nabídka obsahuje seznam pokrmů, které si můžete objednat, spolu s popisem každé nádoby. Když určíte, jaké položky menu chcete, kuchyně v restauraci provádí práci a poskytuje vám hotové pokrmy. Nevíte přesně, jak restaurace připravuje toto jídlo, a vy to opravdu nemusíte.

Podobně API uvádí řadu operací, které mohou vývojáři použít, spolu s popisem toho, co dělají. Vývojář nemusí nutně vědět, jak například vytváří a zobrazuje dialogové okno "Uložit jako". Musí prostě vědět, že je k dispozici v jejich aplikaci.

Není to dokonalá metafora, neboť vývojáři mohou poskytnout API vlastní data, aby získali výsledky, takže snad je to spíš fantazijní restaurace, kde můžete poskytnout některé z vašich vlastních ingrediencí, s nimiž bude kuchyně pracovat.

Ale je to docela přesné. Rozhraní API umožňují vývojářům ušetřit čas tím, že využívají výhod implementace platformy, aby provedli náročné práce. To pomáhá snížit množství vývojářů kódu, které je třeba vytvářet, a také pomáhá vytvářet větší konzistenci mezi aplikacemi pro stejnou platformu. Rozhraní API mohou řídit přístup k hardwarovým a softwarovým zdrojům.

Rozhraní API usnadňují vývojářům život

Řekněme, že chcete vytvořit aplikaci pro iPhone. Operační systém Apple iOS poskytuje velké množství rozhraní API - jako každý jiný operační systém - aby to pro vás bylo snazší.

Pokud chcete vložit webový prohlížeč pro zobrazení jedné nebo více webových stránek, nemusíte naprogramovat vlastní webový prohlížeč od začátku pouze pro svou aplikaci. Aplikaci API WKWebView používáte k vložení objektu prohlížeče WebKit (Safari) do aplikace.

Pokud chcete zachytit fotografie nebo video z fotoaparátu iPhone, nemusíte psát vlastní rozhraní fotoaparátu. Aplikaci API fotoaparátu používáte k vložení vestavěného fotoaparátu iPhone do aplikace. Pokud API neexistují, aby to usnadnilo, vývojáři aplikací by museli vytvářet vlastní software kamery a interpretovat vstupy hardwaru kamery. Ale vývojáři operačních systémů Apple udělali všechnu tuhle práci, takže vývojáři mohou používat fotoaparát API pouze pro vkládání fotoaparátu a poté začít pracovat s jejich aplikací. A když společnost Apple vylepšuje API fotoaparátu, všechny aplikace, které se na ní spoléhají, automaticky využijí tohoto zlepšení.

To platí pro každou platformu. Chcete například vytvořit dialogové okno v systému Windows? Na to je API. Chcete podpořit ověřování otisků prstů v systému Android? K dispozici je také rozhraní API, takže nemusíte testovat každý snímač otisků prstů výrobce Android. Vývojáři nemusí opakovat kolo znovu a znovu.

Rozhraní API řídí přístup k prostředkům

Rozhraní API se také používají pro řízení přístupu k hardwarovým zařízením a softwarovým funkcím, které aplikace nemusí mít nezbytně oprávnění k použití. Proto API často hrají velkou roli v zabezpečení.

Pokud jste například někdy navštívili webové stránky a v prohlížeči viděli zprávu o tom, že webové stránky požadují, aby se vaše přesné umístění zobrazovalo, tyto webové stránky se pokoušejí použít API geolokace ve vašem webovém prohlížeči. Webové prohlížeče vystavují taková rozhraní API, která usnadňují vývojářům přístup k vaší poloze - mohou se prostě zeptat, "kde jste?" A prohlížeč provádí těžkou práci s přístupem k síti Wi-Fi nebo blízké síti Wi-Fi, aby našel vaši fyzickou polohu.

Prohlížeče však tyto informace zobrazují také prostřednictvím rozhraní API, protože je možné ovládat přístup k nim. Když web potřebuje přístup k vaší přesné fyzické poloze, jediný způsob, jak ji získat, je pomocí API umístění. A když se ji webové stránky pokusí použít, vy, uživatel - můžete tuto žádost povolit nebo zamítnout. Jediný způsob přístupu k hardwarovým prostředkům, jako je senzor GPS, je pomocí API, takže prohlížeč může řídit přístup k hardwaru a omezit, co mohou aplikace dělat.

Stejný princip se používá v moderních mobilních operačních systémech, jako jsou iOS a Android, kde mobilní aplikace mají oprávnění, která mohou být vynucena ovládáním přístupu k rozhraním API. Pokud se například vývojáři pokusí přistupovat k fotoaparátu prostřednictvím API fotoaparátu, můžete žádost o povolení popřít a aplikace nemá žádný způsob přístupu k fotoaparátu vašeho zařízení.

Systémy souborů, které používají oprávnění - stejně jako v systémech Windows, Mac a Linux - mají tato práva vynucená systémem API systému souborů. Typická aplikace nemá přímý přístup k surovému fyzickému disku. Místo toho aplikace musí přistupovat k souborům prostřednictvím rozhraní API.

API se používají pro komunikaci mezi službami

Aplikace API se používají také pro všechny jiné důvody. Pokud jste například někdy viděli objekt Google Maps vložený na webových stránkách, tato webová stránka používá API služby Mapy Google pro vkládání této mapy. Společnost Google vystavuje API, jako jsou tyto, vývojářům webu, kteří pak mohou používat rozhraní API pro vytváření komplexních objektů přímo na svých webových stránkách. Pokud API podobně neexistují, vývojáři možná budou muset vytvořit vlastní mapy a poskytnout své vlastní mapové údaje jen proto, aby na webových stránkách vložili trochu interaktivní mapu.

A protože je to rozhraní API, Google může řídit přístup k Mapám Google na webových stránkách třetích stran a zajistit, aby je používali konzistentně, než aby se snažili vkládat například rámeček, který zobrazuje webovou stránku služby Mapy Google.

To platí pro mnoho různých služeb online. K dispozici jsou rozhraní API, které vyžadují překlad textu z Překladače Google nebo vkládání komentářů nebo tweetů z Twitteru na webové stránky.

Norma OAuth také definuje množství rozhraní API, které vám umožňují přihlásit se na webovou stránku s jinou službou - například k používání účtů Facebook, Google nebo Twitter pro přihlášení do nové webové stránky bez vytvoření nového uživatelského účtu pro danou stránku . Rozhraní API jsou standardní smlouvy, které definují, jak vývojáři komunikují se službou, a druh výstupu, který by měli vývojáři očekávat.


Pokud jste se dostali přes to, budete mít lepší představu o tom, co je API. Nakonec nemusíte vědět, co je API, pokud nejste vývojář. Pokud však uvidíte, že softwarová platforma nebo služba přidala nové rozhraní API pro různé hardware nebo služby, mělo by to pro vývojáře jednodušší využít tyto funkce.

Nejlepší Tipy:
Komentář: