HDG legt uit: wat is een API?

Op een internet vol verwarrende en onbekende acroniemen(confusing and unfamiliar acronyms) kan het gemakkelijk zijn om in de war te raken. Een webacroniem dat je misschien hebt gehoord, maar nooit hebt gevoeld om naar te kijken, is 'API'.

Wat is een API ? API is een acroniem voor Application Programming Interface en is een naam voor een reeks routines en protocollen die het proces van het bouwen van softwareapplicaties veel gemakkelijker maken.

Een eenvoudige manier om naar een API te kijken, is als een routekaart die de componenten van een stukje software vertelt hoe ze moeten samenwerken. Zonder het gebruik van een API zou de broncode eruit kunnen zien als een door elkaar gegooide, verwarrende puinhoop.

API's zijn echter complex en vereisen meer dan een korte samenvatting. Laten we in dit artikel bespreken hoe API's werken en welke sites en services ze gebruiken.

Wat is een API en hoe werkt het?(What Is An API and How Does It Work?)

Nu we hebben vastgesteld dat een API een reeks routines is die software in de goede richting wijzen, hoe werkt dit allemaal precies?

De beste manier om de kernfunctionaliteit van een API uit te leggen, is door een voorbeeld uit de praktijk te geven. Maaltijdbezorgdiensten(Food) , zoals GrubHub , zijn momenteel ongelooflijk populair, dus laten we bespreken hoe de code achter dergelijke mobiele apps zou kunnen werken.

Wanneer u op een van deze apps naar een restaurant of gerecht zoekt, ontvangt u relevante resultaten op basis van uw zoekwoorden en locatie. Nadat je een resultaat hebt geselecteerd, krijg je opties voor etenswaren, bezorgtijden en meer restaurantspecifieke opties te zien.

Om uw bezorging te plannen, moet er een verbinding zijn tussen de bezorgwebsite en een database - de website is de frontend en de database is de backend. In de database worden de gegevens voor al deze restaurants, hun beschikbaarheid per locatie, bedieningsschema, menu's en meer opgeslagen.

De API is de verbinding tussen deze database en de website of app die de gegevens presenteert. Het is belangrijk dat er een API aanwezig is om deze verbinding tot stand te brengen, in plaats van hard-gecodeerde gegevens te gebruiken, voornamelijk vanwege de populariteit van integraties van derden. 

Het zou bijvoorbeeld gunstig zijn voor een website als externe aggregators in staat zouden zijn om alle beschikbare restaurants en items te vermelden en te ordenen, toch? Zonder een API zou dit niet mogelijk zijn zonder gebruik te maken van inefficiënte web-scraping-technieken.

De API is de interface die verantwoordelijk is voor het leveren van de gegevens uit de database aan de applicatie, of het nu een website, mobiele app of iets anders is. API's zijn de standaardmanier geworden voor het openen en communiceren van applicatiegegevens via internet, en elke grote website of service die afhankelijk is van connectiviteit van derden, profiteert enorm door er een te bieden.

Welke soorten API's zijn er?(What Types Of APIs Are There?)

Er zijn meerdere verschillende soorten API -protocollen, maar de drie meest populaire zijn SOAP ( Simple Object Access Protocol ), REST ( Representational State Transfer ) en RPC ( Remote Procedure Call ).

SOAP API's

SOAP werd voor het eerst geïntroduceerd aan het einde van de jaren negentig en stelde applicaties in staat om op een eenvoudige manier bronnen te delen via netwerkverbindingen. SOAP vertrouwt op standaardprotocollen, zoals HTTP en SMTP , waardoor het in vrijwel elke omgeving kan worden gebruikt vanwege de populariteit van dergelijke protocollen.

De belangrijkste kracht is dat het op grote schaal wordt gebruikt en ingeburgerd. Als het niet kapot is, repareer het dan niet.

REST API's

REST werd in 2000 geïntroduceerd door Roy Fielding . Het onmiddellijke doel was om een ​​antwoord te bieden op veel van de problemen die werden veroorzaakt door de wijdverbreide invoering van SOAP .

Net als bij SOAP vertrouwt REST op HTTP om informatie tussen applicaties over te dragen. Een groot verschil dat het echter onderscheidt van SOAP , waarvoor gegevens moeten worden verzonden via het XML -gegevensformaat, is dat het JSON ondersteunt . JSON is een gegevensformaat waarvan velen het erover eens zijn dat het gemakkelijker te lezen en te schrijven is. Bovendien kunnen REST-API's gegevens cachen, waardoor veel betere prestaties mogelijk zijn.

REST is nu goed voor meer dan 80% van alle API's , volgens een rapport uit 2017 van Cloud Elements .

RPC API's

RPC-API's zijn er in vele smaken, maar zoals we van REST-API's hebben geleerd , is JSON een zeer populair gegevensformaat, dus JSON-RPC is het populairst.

JSON-RPC is een protocol dat het meest geschikt is voor minimalisten en gebruikers die vertrouwen op de rechtlijnigheid van hun API . Het is veel beperkter in reikwijdte in vergelijking met SOAP en REST , en het is zeer beperkt in zijn flexibiliteit en reeks commando's, maar voor sommige ontwikkelaars is minder meer.

Er zijn andere op RPC gebaseerde API - typen, zoals gRPC, maar JSON-RPC is de juiste keuze als de eenvoud van implementatie uw prioriteit is.

Wie gebruikt API's?(Who Uses APIs?)

Ontwikkelaars van welke aard dan ook, of het nu frontend of backend is, moeten ervaring hebben met het werken met API's . Op het gebied van websites of webservices hebben vrijwel alle grote spelers een soort API beschikbaar - de meest voor de hand liggende is Windows .

Omdat Microsoft Windows het populairste besturingssysteem ter wereld is, is het niet meer dan normaal dat applicatieontwikkelaars een reeks richtlijnen nodig hebben voor interactie met de gebruikersinterface. Zonder toegang tot de Windows API zou het programmeren van een applicatie die sterk afhankelijk is van interactie met het besturingssysteem een ​​grote hoofdpijn zijn.

Er zijn duizenden API's , sommige gratis en sommige betaald. Hier zijn slechts enkele voorbeelden die het bekijken waard zijn:

  • Google Play Developer API : publicatie- en app-beheertaken met betrekking tot Google Play
  • Skyscanner API's : op reizen gebaseerde API's met betrekking tot vluchten, autoverhuur en meer
  • Twilio API : maakt(Allows) programmatisch verzenden en ontvangen van telefoongesprekken mogelijk
  • Discord API : hiermee kunnen gebruikers de bots maken die Discord tot de berichtenservice maken die het nu is
  • IPinfo API : On-the-fly IP- adres en geolocatiegegevens voor uw website of app

API's zijn een van de belangrijkste connectoren achter enkele van de grootste en belangrijkste websites en applicaties van het web. Hoewel de gemiddelde gebruiker het voordeel van API's(APIs) misschien niet ziet , zijn ze een uitkomst voor ontwikkelaars en webservices.



About the author

Ik ben een hardware-ingenieur en softwareontwikkelaar met meer dan 10 jaar ervaring in de Apple- en Google-platforms. Mijn vaardigheden liggen in het ontwikkelen van efficiënte, gebruiksvriendelijke oplossingen voor moeilijke technische problemen. Ik heb ervaring met zowel MacOS- als iOS-apparaten, evenals met toetsenbord- en muisbesturing. In mijn vrije tijd vind ik het leuk om te zwemmen, tennis te kijken en naar muziek te luisteren.



Related posts