Application programming interface

Een application programming interface, afgekort tot API, is een verzameling definities op basis waarvan een computerprogramma kan communiceren met een ander programma of onderdeel, meestal in de vorm van bibliotheken. API's zijn vaak de scheiding tussen verschillende lagen van abstractie, zodat applicaties op een hoog niveau van abstractie kunnen werken en het minder abstracte werk uitbesteden aan andere programma's. Hierdoor hoeft bijvoorbeeld een tekenprogramma niet te weten hoe het de printer moet aansturen, maar roept het daarvoor een gespecialiseerd stuk software aan in een bibliotheek, via een afdruk-API.

Het verschil met een stuurprogramma is dat dit niet bedoeld is om direct gebruikt te worden door applicaties, maar enkel door de kernel van een besturingssysteem. Een besturingssysteem biedt de functionaliteit van soortgelijke stuurprogramma's aan als API.

Algemeen

Een API definieert de toegang tot de functionaliteit die erachter schuil gaat. De buitenwereld kent geen details van de functionaliteit of implementatie, maar kan dankzij de API die functionaliteit wel gebruiken. Een voordeel hiervan is dat met een API verschillende implementaties kunnen worden gebruikt, zolang deze maar voldoen aan de API. Een voorbeeld is de Windows API. De onderliggende implementatie kan per machine verschillen, zonder dat de applicatie dit eigenlijk merkt: zowel Windows 98 als XP werkten met de Win32-API.

Een API kan in een interface description language worden geschreven. Dit wordt vooral gebruikt als meer programmeertalen van dezelfde API gebruik moeten maken of als er wordt gewerkt met een componentensysteem, zoals COM of XPCOM.

Bibliotheek wordt soms als synoniem voor API gebruikt, maar dit is niet helemaal juist: een API vormt de toegang tot de bibliotheek. De API is daarbij de definitie van functies en andere objecten die in de bibliotheek beschikbaar zijn voor de applicatie.

API's voor websites

Het is steeds gebruikelijker dat ook websites over een publieke open API beschikken. Deze kunnen dan met methodes als REST, SOAP, GraphQL, RSS of XML/RPC worden aangesproken. Het formaat dat wordt teruggestuurd is dan bijvoorbeeld XML of JSON. Door een dergelijke API beschikbaar te stellen is het mogelijk om een mashup te maken, zoals een combinatie van de kaarten van Google Maps met de foto's van Panoramio. Dergelijke toepassingen zijn typisch voor Web 2.0 en open data worden doorgaans via een API ter beschikking gesteld.

Wanneer een website geen API aanbiedt, kan men nog proberen de gegevens door scrapen te verzamelen.

Voorbeelden

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.