Mashup (aplicación web híbrida)
# Mashup (aplicación web híbrida)

En desarrollo web, una mashup es una forma de integración y reutilización. Ocurre cuando una aplicación web es usada o llamada desde otra aplicación, con el fin de reutilizar su contenido o funcionalidad. El uso en otra(s) fuente(s), para crear nuevos servicios simples, visualizado en una única interfaz gráfica diferente. Por ejemplo, se pueden combinar las direcciones y fotografías de las ramas de una biblioteca con un mapa de Google Maps para crear un mashup de mapa.

El término implica integración fácil y rápida, a menudo usando varias API abiertas y fuentes de datos para producir resultados enriquecidos, que no fueron necesariamente el motivo original de producir la fuente primaria de datos.

## El concepto

Es el contenido usado obtenido de otra fuente vía una interfaz pública o API (web services), aunque existe gente en la comunidad que considera que los casos en que las interfaces son privadas no deberían contar como mashups. Otros métodos de obtener contenido para mashups incluyen Web Feeds (por ejemplo: RSS o Atom) y screen scraping.

Mucha gente experimenta con mashups usando las API de Amazon, eBay, Flickr, Google, Microsoft, Yahoo o YouTube; lo que ha llevado a la creación de un editor mashup.

La arquitectura de los mashups está siempre compuesta de tres partes:

* El proveedor de contenidos: fuente de los datos. Los datos están disponibles vía una API y diferentes protocolos web como RSS, REST y Web Service.
* El sitio mashup: es la nueva aplicación web que provee un nuevo servicio utilizando diferente información y de la que no es dueña.
* El navegador web cliente: es la interfaz de usuario del mashup. En una aplicación web, el contenido puede ser mezclado por los web browser clientes usando lenguaje web del lado del cliente, por ejemplo, Javascript.

## Tipos de mashups

Los mashups se presentan actualmente en tres formas: mashups de consumidores, mashups de datos y mashups empresariales.

* El tipo más conocido es el de mashup de consumidores, que está muy bien ejemplificado por muchas aplicaciones que utilizan Google Maps. Los mashups de este tipo combinan datos de fuentes varias, ocultando este hecho tras una interfaz gráfica simple.
* Un mashup de negocio es una combinación de todo lo anterior, enfocada en la agregación de datos y la presentación y agregando además una funcionalidad colaborativa, haciendo que el resultado final sea una aplicación de negocio apropiada.
* Mashups dentro de mashups son conocidos como “mashups monstruos”.

Es importante reconocer que los mashups ayudan o facilitan la integración de aplicaciones orientadas a arquitecturas SOA.

## Ejemplos

### Mapas

* Chicago Crime: el departamento de policía de Chicago tiene un mashup que integra la base de datos del departamento de crímenes con Google Maps con el objetivo de ayudar a detener crímenes en ciertas áreas y avisar a los ciudadanos de áreas potencialmente más peligrosas.
* WikiCrimes es un sitio web tipo wiki donde los usuarios de Internet pueden informar sobre crímenes pinchando banderas en un mapa basado en Google Maps. El sitio distingue categorías dependiendo del color.
* minnus es una comunidad virtual donde sus usuarios tienen acceso a información de todo tipo, ya sea cultural, social, histórica, comercial, ambiental, turística, de tránsito, etcétera. Dicha información se encuentra geoposicionada en un mapa creado con imágenes satelitales para así formar grupos con los mismos intereses.
* Mapase es una herramienta que combina los datos de los mapas geográficos de Google y fotos de Flickr.

### Vídeo y fotos

* Flickr es un sitio de almacenamiento de imágenes que permite a los usuarios organizar sus colecciones de imágenes y compartirlas. Utilizando su API, el contenido puede ser usado en otros sitios creando mashups.

### Búsqueda y compras

* Travature es un portal de viajes que ha integrado motores de meta búsquedas con guías de viajes tipo wiki y reseñas de hoteles. También permite compartir experiencias entre viajantes.

### Enciclopedias

* Histourist era un mashup semántico que ofrece una enciclopedia multimedia geolocalizada de lugares históricos. Los artículos se preparan mediante una combinación de editores y software que explotan los recursos en línea en fuentes definidas como "confiables" (BBC, National Geographic, The History Channel, etc.) y en particular los servicios de la web semántica para enriquecer los artículos con videos, fotos, bibliografías, y clasificarlo en las taxonomías del servicio.
* Datos: Q821080
