background preloader

Architecture / Technique

Facebook Twitter

SOAP. Un article de Wikipédia, l'encyclopédie libre.

SOAP

Pour l’article homophone, voir S.O.A.P.. SOAP (ancien acronyme de Simple Object Access Protocol) est un protocole de RPC orienté objet bâti sur XML. Il permet la transmission de messages entre objets distants, ce qui veut dire qu'il autorise un objet à invoquer des méthodes d'objets physiquement situés sur un autre serveur. Le transfert se fait le plus souvent à l'aide du protocole HTTP, mais peut également se faire par un autre protocole, comme SMTP. Le protocole SOAP est composé de deux parties : une enveloppe, contenant des informations sur le message lui-même afin de permettre son acheminement et son traitement,un modèle de données, définissant le format du message, c'est-à-dire les informations à transmettre.

Le protocole SOAP emploie des métadonnées[2]. SOAP n'est plus un acronyme depuis la version 1.2. Critiques techniques[modifier | modifier le code] Service Web. Un article de Wikipédia, l'encyclopédie libre.

Service Web

Un service web (ou service de la toile[1]) est un programme informatique de la famille des technologies web permettant la communication et l'échange de données entre applications et systèmes hétérogènes dans des environnements distribués. Il s'agit donc d'un ensemble de fonctionnalités exposées sur internet ou sur un intranet, par et pour des applications ou machines, sans intervention humaine, de manière synchrone ou asynchrone. Le protocole de communication est défini dans le cadre de la norme SOAP dans la signature du service exposé (WSDL).

Actuellement, le protocole de transport est essentiellement HTTP(S). Le concept a été précisé et mis en œuvre dans le cadre de Web Services Activity[2], au W3C, particulièrement avec le protocole SOAP. Très grandes généralités sur un service web. Il existe plusieurs technologies derrière le terme services web : Les Services Web de type Representational state transfer (REST)[modifier | modifier le code] Interface de programmation. Un article de Wikipédia, l'encyclopédie libre.

Interface de programmation

Pour les articles homonymes, voir API. Dans l'industrie contemporaine du logiciel, les applications informatiques se servent de nombreuses interfaces de programmation, la programmation se fait en réutilisant des briques de fonctionnalités fournies par des logiciels tiers. Cette construction par assemblage nécessite pour le programmeur de connaître la manière d’interagir avec les autres logiciels, qui dépend de leur interface de programmation. Le programmeur n'a pas besoin de connaître les détails de la logique interne du logiciel tiers, et celle-ci n'est généralement pas documentée par le fournisseur.

Des logiciels tels que les systèmes d'exploitation, les systèmes de gestion de base de données, les langages de programmation, ou les serveurs d'applications comportent une interface de programmation. Description[modifier | modifier le code] Utilisation[modifier | modifier le code] Une des interfaces les plus connues est la Windows API. Etc. Representational State Transfer. Un article de Wikipédia, l'encyclopédie libre.

Representational State Transfer

REST (representational state transfer) est un style d’architecture pour les systèmes hypermédia distribués, créé par Roy Fielding en 2000 dans le chapitre 5 de sa thèse de doctorat[1]. REST n’est pas un protocole (tel que HTTP) ou un format. Ce style d'architecture est particulièrement bien adapté au World Wide Web mais n'en est pas dépendant. Les contraintes, telles que définies par Roy Fielding, peuvent s'appliquer à d'autres protocoles d'application que HTTP. Contraintes d'une architecture REST[modifier | modifier le code] Les contraintes sont les suivantes : Client-serveur : les responsabilités sont séparées entre le client et le serveur. Description de REST[modifier | modifier le code] Confusion entre REST et protocoles[modifier | modifier le code] RPC ainsi que SOAP ne sont pas des styles d'architecture mais des protocoles.

Avantages de REST[modifier | modifier le code] Inconvénients de REST[modifier | modifier le code] Par exemple : ou.