Connexion Premium

Dis Next, c’est quoi une API ? Un SDK ?

Avec de vrais morceaux de bœuf dedans

Dis Next, c’est quoi une API ? Un SDK ?

Illustration : Flock

On voit souvent les termes « API » et « SDK ». De quoi s’agit-il ? De briques de développement devenues incontournables aujourd’hui. On vous explique tout ça calmement.

Nous sommes cernés par les API depuis longtemps. Quand vous utilisez la fonction de partage pour envoyer un article à des amis depuis votre téléphone, envoyez un emoji, installez une application, faites un clic droit, copiez puis collez un contenu, Uber affiche un plan, réalisez un paiement en ligne sur un site marchand, programmez des envois d’emails…

Pour résumer à gros traits, une API – Application Programming Interface – est une brique élémentaire à laquelle on fait appel pour initier une opération. Dans le cas d’un site marchand par exemple, que vous souhaitiez payer par carte bancaire directement ou via un prestataire comme Paypal, tout est géré par des API. Les sociétés concernées les fournissent et documentent, afin que les sites puissent les employer « telles quelles ».

Vous avez demandé un bœuf bourguignon ?

L’analogie qui revient le plus souvent pour expliquer le fonctionnement est celle du restaurant. Vous entrez, vous vous asseyez et vous commandez un plat au serveur. Vous ne savez pas ce qui se passe en cuisine, ni comment l’établissement est organisé. Vous n’avez pas besoin de connaître son infrastructure électrique ou sa consommation d’eau, son nombre d’employés ou le type d’ustensiles utilisés, si le bœuf mijote dans une cocotte en fonte ou une casserole en inox. Tout ce que vous savez, c’est que le serveur va vous apporter un bœuf bourguignon, c’est sa mission.

Ici, le serveur représente l’API : il vient vous exposer les possibilités. Il accepte vos demandes si elles cadrent avec ce que le restaurant a à offrir, via un langage spécifique. Et oui : si vous commencez à parler du temps qu’il fait, le serveur va certainement s’en aller, car ces informations ne l’intéressent pas, ou en tout cas ne correspondent pas à sa tâche. Vous indiquez donc un ou plusieurs éléments figurant sur le menu, le serveur s’en va, transmet vos instructions, et vous pouvez déguster un bœuf bourguignon, sans avoir eu besoin de le préparer vous-même. De même, la cuisine ne sait pas qui vous êtes, elle n’a pas besoin de le savoir : elle sait simplement qu’elle doit fournir un bœuf bourguignon.

C’est le principal général de l’API : exposer des capacités, que d’autres peuvent utiliser pour éviter de tout refaire à chaque fois. Elle permet à deux systèmes (au sens large) de collaborer sans que l’un ait besoin de connaître les détails de l’autre. Ce fonctionnement est aujourd’hui omniprésent. Par exemple, si vous ouvrez une application ou un site affichant une carte routière, il est très probable que celle-ci soit fournie par Google ou OpenStreetMap, via une API que l’application doit simplement appeler.

DirectX, un bon exemple

Pour celles et ceux qui ont connu les années 1990, vous vous souvenez peut-être de l’arrivée de DirectX sur Windows. Une petite révolution dans le monde des jeux vidéo, car DirectX est un lot d’API exposant les capacités du matériel de l’ordinateur. Avant, par exemple pour jouer à Doom 2, il fallait que le jeu sache précisément à quel matériel s’adresser, ce qui entraînait parfois des problèmes, notamment sur le son.

Il reste 74% de l'article à découvrir.

Cadenas en colère - Contenu premium

Soutenez un journalisme indépendant,
libre de ton, sans pub et sans reproche.

Accédez en illimité aux articles

Profitez d'un média expert et unique

Intégrez la communauté et prenez part aux débats

Partagez des articles premium à vos contacts

Commentaires (1)

votre avatar
il fallait que le jeu sache précisément à quel matériel s’adresser
haaa, la joie de paramétrer la carte son, soundblaster, soundblaster 16, roland, IRQ, DMA, ... C'était le bon temps :phiphi:
Merci pour cet éclairage auquel ne n'avait pas pensé !