Application Programming Interface

FondamentalQu'est-ce qu'une API ?

Selon Wikipédia, en informatique, une interface de programmation d’application ou interface de programmation applicative (souvent désignée par le terme API pour Application Programming Interface) est un ensemble normalisé de classes, de méthodes, de fonctions et de constantes qui sert de façade par laquelle un logiciel offre des services à d’autres logiciels. Elle est offerte par une bibliothèque logicielle ou un service web, le plus souvent accompagnée d’une description qui spécifie comment des programmes « consommateurs »peuvent se servir des fonctionnalités du programme « fournisseur ».

Complément

Ainsi, quand on crée une interface, pour rappel le tableau précédent :

Méthode / Opérateur

Description

d = Date(j, m, a)

Initialisation sous forme de date jj/mm/aaaa

Valeur 01/01/0000 par défaut.

== ou <

Comparaison d'objets de la classe Date.

d.getJour()

d.getMois()

d.getAnnee()

Renvoie respectivement la valeur du jour, du mois et de l'année de la date d considérée.

d.setJour(entier)

d.setMois(entier)

d.setAnnee(entier)

Modifie la valeur du jour, du mois ou de l'année de la date d considérée.

on réalise un début d'API, qui sera nécessaire pour qu'un développeur puisse utiliser votre structure de données afin d'améliorer le logiciel.

ExempleExemple d'usage d'API : extension d'un navigateur

Si vous souhaitez créer une extension pour un navigateur, vous allez devoir interroger des API qui vont vous permettre, par exemple, d'agir sur des menus du navigateur. L'API Javascript, nommée menus, vous permet d'ajouter des éléments au système de menus du navigateur.

Elle est définie complètement sur cette page : https://developer.mozilla.org/fr/docs/Mozilla/Add-ons/WebExtensions/API/menus

ExempleExemple d'API dans le graphisme 3D

Dans le graphisme 3D, on peut noter des API connues :

  • OpenGL, et plus récemment Vulkan qui est mise en oeuvre par plusieurs constructeurs de carte graphiques (compatible Gnu/Linux, Windows, Android).

  • Direct3D pour les produits Microsoft, API fonctionnant uniquement sur Windows.

API sur le web

Une API Web est une interface de programmation d'application (API) pour un serveur Web ou un navigateur Web. En tant que concept de développement Web, il peut être lié au côté client d'une application Web (y compris à travers un framework web).

Généralement, une application smartphone d'un service web (ENT, réseaux sociaux...) est basée sur l'API Web.

RemarquePoints d'accès (end point)

Les points d'accès sont des aspects importants de l'interaction avec les API Web côté serveur, car ils spécifient où se trouvent les ressources accessibles par des logiciels tiers. Généralement l'accès se fait via une URL sur laquelle sont postées les requêtes HTTP, et dont la réponse est donc attendue. Les API Web peuvent être publiques ou privées, cette dernière nécessitant un jeton d'accès.

On trouve des API publiques, ne nécessitant pas de jetons d'accès ou systèmes d'authentification, c'est celles-ci que nous allons étudier.

ExempleExemples d'API Publiques

Un annuaire d'API publiques disponibles : https://github.com/public-api-lists/public-api-lists