|
Expliquez-moi...
29/05/2007
Les Mashups
Un mashup (en anglais "écraser", "mélanger", "mixer") est une application composite permettant d'utiliser du contenu provenant de plusieurs sources Web pour créer un service complètement nouveau sur un autre site. C'est avec l'arrivée du Web 2.0 et de sa dimension dynamique et interactive que sont apparus les mashups. Ils utilisent les contenus de sites tiers via des interfaces de programmation (API) : chaque site qui met ses informations à disposition d'autres sites dispose d'une de ces APIs, le mashup agrégeant les informations de toutes les APIs qui le composent pour les publier sur un nouveau site original. C'est la mise en place de nombreuses APIs dites ouvertes qui a permis le développement des mashups. Exemples La plus connue des APIs est Google Map, utilisée par un très grand nombre de sites pour leurs systèmes de géolocalisation. Par exemple le site de l'agence immobilière Trulia aux Etats-Unis a intégré le service de Google Map pour localiser un bien immobilier. D'autres applications fameuses sont ChicagoCrime qui recense le nombre de crimes commis dans la ville du même nom ou encore de façon plus triviale le site DavelovesElizabeth qui vous permet de suivre le parcours amoureux d'un couple. Mais il existe d'autres sites proposant des APIs, c'est le cas de Yahoo!, de Amazon, d'eBay, ou de FedEx, leur intérêt étant d'inciter les développeurs à répandre et à diffuser leur contenu : FedEx permet par exemple à un commerçant de présenter sur son propre site Web l'état d'avancement d'une livraison qu'il a sous-traitée au logisticien, l'ouverture de l'API d'eBay a donné naissance au site Andale qui propose des outils d'analyse et de suivi des ventes faites sur le site d'enchères, etc. Pour finir, on peut citer Netvibes, le portail Web individuel, qui donne accès à une multitude de services pour se créer une page Web personnalisée. Comment les mashups sont-ils conçus ? Pour élaborer ces sites hybrides, les développeurs ont recours à des API ouvertes. Ces interfaces de programmation utilisent la technologie des Web services qui permet de créer de nouveaux services composites en intégrant et en exploitant des programmes existants, des services ou des contenus sources élaborés par d'autres. En pratique, ce qui est utilisé c'est l'objet XMLHttpRequest, Ajax côté client, et les API (ou les Web Services) des sites coté serveur dont on mixe le contenu. Les Mashups font non seulement appel à Ajax, mais aussi à des procédés d'extraction et d'agrégation de contenu, comme RSS ou Atom. Voici un tutoriel expliquant comment faire pour obtenir l'interface Google Map sur son propre site. Mashups vs. SOA La SOA (Architecture Orientée Service) est un modèle d'interaction applicative entre différents composants logiciels.
On peut citer la SNCF, qui a mis en place une architecture de type SOA pour son système de réservation (recherche d'horaires, demande de tarifs, réservation...) qui prend en charge à la fois les terminaux des guichets des agences et gares, et les sollicitations de son site Web de commande en ligne. Si les opinions divergent sur les relations entre SOA et Mashup, il est certain que les deux sont étroitement liés. SOA et Mashup sont deux approches différentes pour trouver des solutions à un même problème : celui du partage de l'information et des services. Il semble que leur différence de fond tienne à leur approche culturelle. La SOA est plutôt orienté entreprise (on parle d'applications reliées entre elles) alors que les mashups avec le Web 2.0 misent plutôt sur le lien entre les personnes et donc la dimension sociale. Pour parler plus concrètement, on peut dire dans le cadre de la SOA, qu'il s'agit d'un contrat entre deux parties et/ou que ce sont deux applications qui dialoguent alors que le mashup est libre et est accessible à n'importe qui.
|