webleads-tracker

Quelle est la différence entre “API” et “service web” ?

  • Quelle est la différence entre “API” et “service web” ?

    Quelle est la différence entre “API” et “service web” ?

    “API” et “Service web” désignent tous deux des moyens de communication. La seule différence entre ces deux termes est le fait qu’un service web facilite les interactions entre deux machines situées sur un réseau. Une API, elle, sert d’interface entre deux applications différentes, afin qu’elles puissent communiquer ensemble.

    Une API est une méthode par laquelle les fournisseurs tiers peuvent écrire des programmes pouvant facilement interagir avec d’autres programmes. Un service web est conçu pour avoir une interface existant dans un format traitable par des machines, généralement décrite dans une grammaire Web Service Description Langage (WSDL).

    Généralement, “HTTP” est le protocole de communication le plus souvent utilisé. Un service web utilise aussi SOAP, REST, et XML-RPC comme moyens de communication. Une API peut utiliser n’importe quel moyen de communication pour déclencher une interaction entre des applications. Par exemple, les appels système sont invoqués par l’API du noyau Linux en utilisant des interruptions.

    Une API définit exactement les méthodes par lesquelles un programme peut interagir avec un autre. Lorsque cette action implique l’envoi de données par un réseau, les services web entrent en jeu. Une API implique généralement l’appel de fonctions internes à un logiciel.

    Dans le cas d’applications web, l’API utilisée est basée sur le web. Les applications de bureau comme les tableurs et les traitements de texte utilisent des API en VBA et en COM, qui n’ont pas recours à des services web. Une application serveur comme Joomla peut utiliser une API en PHP, présente sur le serveur, et qui n’a pas recours à un service web.

    Plus simplement, un service web est une API habillée d’HTTP. Une API n’est cependant pas nécessairement basée sur le web. Une API est simplement un ensemble complet de règles et de spécifications qu’un logiciel doit suivre pour faciliter ses interactions. Un service web ne contient pas nécessairement un ensemble complet de spécifications, et parfois, il est incapable d’effectuer toutes les tâches qu’une API complète peut accomplir.

    On peut accéder aux API par de multiples moyens, parmi lesquels : objets COM, fichiers DLL et .H dans le langage C/C++, fichiers JAR ou RMI en Java, XML en HTTP, JSON en HTTP, etc. La méthode utilisée par les services web pour accéder à l’API ne peut se faire que via un réseau.

    Résumé :

    1. Tous les services web sont des API mais toutes les API ne sont pas des services web.
    2. Les services web sont parfois incapables d’effectuer toutes les opérations qu’une API pourrait réaliser.
    3. Un service web n’a recours qu’à trois types d’utilisation : SOAP, REST et XML-RPC pour la communication, alors qu’une API peut utiliser n’importe quel style de communication.
    4. Un service web a toujours besoin d’un réseau pour fonctionner, alors qu’une API n’a pas besoin d’un réseau pour ses opérations.
    5. Une API facilite l’interaction directe avec une application, tandis qu’un service web est un moyen de mettre en contact deux machines via un réseau.

     

    Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn

    Leave a comment

    Required fields are marked *