U hebt waarschijnlijk de term 'API' te zien gekregen. Besturingssysteem-, webbrowser- en app-updates kondigen vaak nieuwe API's aan voor ontwikkelaars. Maar wat is een API?
De term API is een acroniem en staat voor "Application Programming Interface."
Denk aan een API zoals een menu in een restaurant. Het menu biedt een lijst met gerechten die u kunt bestellen, samen met een beschrijving van elk gerecht. Wanneer u opgeeft welke menu-items u wilt, doet de keuken van het restaurant het werk en biedt u enkele voltooide gerechten. U weet niet precies hoe het restaurant dat voedsel bereidt, en dat hoeft ook niet echt.
Evenzo vermeldt een API een aantal bewerkingen die ontwikkelaars kunnen gebruiken, samen met een beschrijving van wat ze doen. De ontwikkelaar hoeft niet per se te weten hoe bijvoorbeeld een besturingssysteem een dialoogvenster "Opslaan als" opbouwt en presenteert. Ze moeten alleen weten dat het beschikbaar is voor gebruik in hun app.
Dit is geen perfecte metafoor, omdat ontwikkelaars mogelijk hun eigen gegevens aan de API moeten verstrekken om de resultaten te krijgen, dus misschien is het meer een chic restaurant waar je enkele van je eigen ingrediënten kunt leveren waarmee de keuken zal werken.
Maar het is in het algemeen accuraat. API's stellen ontwikkelaars in staat om tijd te besparen door gebruik te maken van de implementatie van een platform om het nitty-gritty werk te doen. Dit helpt het aantal ontwikkelaars van code-ontwikkelaars te verminderen en zorgt ook voor meer samenhang tussen apps voor hetzelfde platform. API's kunnen de toegang tot hardware- en softwarebronnen regelen.
Stel dat u een app voor een iPhone wilt ontwikkelen. Het iOS-besturingssysteem van Apple biedt een groot aantal API's, zoals elk ander besturingssysteem, om het u gemakkelijker te maken.
Als u bijvoorbeeld een webbrowser wilt insluiten om een of meer webpagina's weer te geven, doet u dat niet t hoeft alleen uw eigen webbrowser voor uw toepassing te programmeren. U gebruikt de WKWebView API om een WebKit (Safari) -browserobject in uw toepassing in te sluiten.
Als u foto's of video's wilt maken van de camera van de iPhone, hoeft u geen eigen camera-interface te schrijven. U gebruikt de camera-API om de ingebouwde camera van de iPhone in uw app in te sluiten. Als er geen API's zouden bestaan om dit gemakkelijk te maken, zouden app-ontwikkelaars hun eigen camerasoftware moeten maken en de invoer van de camera-hardware moeten interpreteren. Maar de ontwikkelaars van het besturingssysteem van Apple hebben al dit harde werk gedaan, zodat de ontwikkelaars de camera-API gewoon kunnen gebruiken om een camera in te sluiten en vervolgens door te gaan met het bouwen van hun app. En wanneer Apple de camera-API verbetert, profiteren alle apps die ervan afhankelijk zijn automatisch van die verbetering.
Dit geldt voor elk platform. Wilt u bijvoorbeeld een dialoogvenster maken op Windows? Daar is een API voor. Wil je vingerafdrukverificatie ondersteunen op Android? Daar is ook een API voor, dus je hoeft niet elke vingerafdruksensor van elke Android-fabrikant te testen. Ontwikkelaars hoeven het wiel niet steeds opnieuw uit te vinden.
API's worden ook gebruikt om toegang tot hardwareapparaten en softwarefuncties te regelen die een toepassing mogelijk niet per se hoeft te gebruiken. Daarom spelen API's vaak een grote rol in de beveiliging.
NAAR VERWANTE: Websites stoppen met vragen om uw locatie
Als u bijvoorbeeld een website hebt bezocht en een bericht in uw browser hebt gezien dat de website vraagt om uw precieze locatie te zien, die website probeert de geolocatie-API in uw webbrowser te gebruiken. Webbrowsers stellen API's als deze bloot om het voor webontwikkelaars gemakkelijk te maken om toegang te krijgen tot uw locatie; ze kunnen gewoon vragen "waar ben je?" En de browser doet het harde werk om toegang te krijgen tot gps- of nabije Wi-Fi-netwerken om je fysieke locatie te vinden.
browsers stellen deze informatie echter ook bloot via een API, omdat het mogelijk is om de toegang ertoe te beheren. Wanneer een website toegang wenst tot uw exacte fysieke locatie, is de enige manier om deze te verkrijgen via de locatie-API. En wanneer een website het probeert te gebruiken, kunt u - de gebruiker - ervoor kiezen om dit verzoek toe te staan of te weigeren. De enige manier om toegang te krijgen tot hardwarebronnen, zoals de GPS-sensor, is via de API, zodat de browser de toegang tot de hardware kan regelen en kan beperken wat apps kunnen doen.
Ditzelfde principe wordt gebruikt in moderne mobiele besturingssystemen zoals iOS en Android, waar mobiele apps rechten hebben die kunnen worden afgedwongen door de toegang tot API's te regelen. Als een ontwikkelaar bijvoorbeeld probeert toegang te krijgen tot de camera via de camera-API, kunt u het toestemmingsverzoek weigeren en heeft de app geen toegang tot de camera van uw apparaat.
Bestandssystemen die machtigingen gebruiken, zoals op Windows, Mac en Linux: deze machtigingen worden afgedwongen door de bestandssysteem-API. Een typische toepassing heeft geen directe toegang tot de onbewerkte fysieke harde schijf. In plaats daarvan moet de app toegang hebben tot bestanden via een API.
API's worden ook voor allerlei andere redenen gebruikt. Als u bijvoorbeeld ooit een Google Maps-object op een website heeft ingesloten, gebruikt die website de Google Maps API om die kaart in te sluiten. Google stelt dergelijke API's voor aan webontwikkelaars, die vervolgens de API's kunnen gebruiken om complexe objecten rechtstreeks op hun website te plegen. Als API's als deze niet zouden bestaan, zouden ontwikkelaars mogelijk hun eigen kaarten moeten maken en hun eigen kaartgegevens moeten opgeven om een beetje interactieve kaart op een website te plaatsen.
En omdat het een API is, kan Google de toegang tot Google beheren Kaarten op websites van derden, zodat deze op een consistente manier worden gebruikt in plaats van te proberen een frame dat de Google Maps-website toont, moeiteloos in te sluiten.
Dit is van toepassing op veel verschillende online services. Er zijn API's voor het aanvragen van tekstvertalingen van Google Translate, of het insluiten van Facebook-opmerkingen of tweets van Twitter op een website.
GERELATEERD: Wat is OAuth? Hoe die Facebook-, Twitter- en Google-aanmeldingsknoppen werken
De OAuth-standaard definieert ook een aantal API's waarmee u kunt inloggen op een website met een andere service, bijvoorbeeld om uw Facebook-, Google- of Twitter-accounts te gebruiken om in te loggen op een nieuwe website zonder een nieuwe gebruikersaccount aan te maken alleen voor die site. API's zijn standaardcontracten die definiëren hoe ontwikkelaars communiceren met een service en het type uitvoer dat deze ontwikkelaars mogen verwachten terug te ontvangen.
Als u dit hebt doorstaan, krijgt u een beter idee van wat een API is. Uiteindelijk hoeft u niet echt te weten wat een API is tenzij u een ontwikkelaar bent. Als u echter ziet dat een softwareplatform of -service nieuwe API's voor verschillende hardware of services heeft toegevoegd, moet het voor ontwikkelaars eenvoudiger zijn om van dergelijke functies te profiteren.
Afbeeldingstegoed: patpitchaya / Shutterstock.com.
Hoe u uw Apple TV instelt om automatisch de apps van uw iPhone te installeren
Als er een Apple TV-compatibele versie van uw favoriete iPhone- of iPad-app is, maar deze nooit bij uw Apple TV komt, doet u niet veel goed. Gelukkig kun je met een eenvoudige aanpassing ervoor zorgen dat je de beste apps op zowel je telefoon als je tv krijgt. Nu Apple TV en de onderliggende tvOS zijn begonnen te rijpen, zijn er talloze cross-over apps die je meenemen favoriete iOS-apps op je tv.
Hoe maak je goede zonsondergangfoto's
Iedereen probeert op een gegeven moment een foto te maken van een spectaculaire zonsondergang. Maar als je camera de magie niet helemaal vastlegt zoals je hem in het echte leven ziet, zijn hier een paar trucjes om in gedachten te houden. Wat maakt een goede zonsondergangfoto Of je nu een zonsondergang fotografeert met een DSLR, Snapchat of iets daartussenin, de principes blijven hetzelfde.