stringtranslate.com

Mashup (aplicación web híbrida)

Un mashup ( jerga de la industria informática ), en desarrollo web , es una página web o aplicación web que utiliza contenido de más de una fuente para crear un único servicio nuevo que se muestra en una única interfaz gráfica. Por ejemplo, un usuario podría combinar las direcciones y fotografías de las sucursales de su biblioteca con un mapa de Google para crear un mashup de mapas. [1] El término implica una integración fácil y rápida, que utiliza con frecuencia interfaces de programación de aplicaciones abiertas ( API ) y fuentes de datos para producir resultados enriquecidos que no eran necesariamente la razón original para producir los datos de origen sin procesar. El término mashup proviene originalmente de crear algo combinando elementos de dos o más fuentes. [2]

Las principales características de un mashup son la combinación, la visualización y la agregación. Es importante hacer que los datos existentes sean más útiles, tanto para uso personal como profesional. Para poder acceder de forma permanente a los datos de otros servicios, los mashups suelen ser aplicaciones cliente o estar alojados en línea.

En los últimos años [ ¿cuándo? ] , cada vez más aplicaciones web han publicado API que permiten a los desarrolladores de software integrar fácilmente datos y funciones al estilo SOA , en lugar de crearlas por sí mismos. Se puede considerar que los mashups tienen un papel activo en la evolución del software social y la Web 2.0 . Las herramientas de composición de mashups suelen ser lo suficientemente simples como para que las utilicen los usuarios finales. Por lo general, no requieren habilidades de programación y, en cambio, admiten el cableado visual de widgets , servicios y componentes de GUI. Por lo tanto, estas herramientas contribuyen a una nueva visión de la Web , donde los usuarios pueden contribuir. [ aclaración necesaria ]

El término "mashup" no está definido formalmente por ningún organismo normativo. [3]

Historia

El contexto más amplio de la historia de la Web proporciona un antecedente para el desarrollo de los mashups. Bajo el modelo Web 1.0 , las organizaciones almacenaban datos de los consumidores en portales y los actualizaban periódicamente. Controlaban todos los datos de los consumidores, y los consumidores tenían que usar sus productos y servicios para obtener la información. [ cita requerida ]

La llegada de la Web 2.0 introdujo estándares web que fueron adoptados de forma generalizada por los competidores tradicionales y que permitieron acceder a los datos de los consumidores. Al mismo tiempo, surgieron los mashups, que permitieron combinar y combinar las API de los competidores para desarrollar nuevos servicios.

Los primeros mashups utilizaban servicios de mapas o servicios de fotografía para combinar estos servicios con datos de cualquier tipo y, por lo tanto, producir visualizaciones de datos. [4] [ verificación fallida ] Al principio, la mayoría de los mashups estaban basados ​​en el consumidor, pero recientemente [ ¿cuándo? ] el mashup se ha visto [ ¿ por quién? ] como un concepto interesante que también es útil para las empresas. Los mashups empresariales pueden combinar datos internos existentes con servicios externos para generar nuevas vistas de los datos. También existía el Yahoo! Pipes gratuito para crear mashups de forma gratuita utilizando el lenguaje de consulta de Yahoo !.

Tipos de mashup

Existen muchos tipos de mashup, como mashups empresariales, mashups de consumidores y mashups de datos. [5] El tipo de mashup más común es el mashup de consumidores, dirigido al público en general.

Por tipo de API

Los mashups también se pueden clasificar por el tipo de API básica que utilizan, pero cualquiera de ellos se puede combinar entre sí o integrar en otras aplicaciones.

Tipos de datos

Funciones

Habilitador de mashup

En tecnología, un habilitador de mashup es una herramienta para transformar recursos de TI incompatibles en una forma que permita combinarlos fácilmente para crear un mashup. Los habilitadores de mashup permiten aplicar técnicas y herramientas potentes (como plataformas de mashup) para combinar datos y servicios a nuevos tipos de recursos. Un ejemplo de un habilitador de mashup es una herramienta para crear una fuente RSS a partir de una hoja de cálculo (que no se puede usar fácilmente para crear un mashup). Muchos editores de mashup incluyen habilitadores de mashup, por ejemplo, Presto Mashup Connectors, Convertigo Web Integrator o Caspio Bridge .

Los facilitadores de mashups también han sido descritos como "los proveedores de servicios y herramientas que hacen posibles los mashups". [ cita requerida ]

Historia

Los primeros mashups fueron desarrollados manualmente por programadores entusiastas. Sin embargo, a medida que los mashups se hicieron más populares, las empresas comenzaron a crear plataformas para crear mashups, que permiten a los diseñadores construir visualmente mashups conectando componentes de mashup.

Los editores de mashup han simplificado enormemente la creación de mashups, aumentando significativamente la productividad de los desarrolladores de mashup e incluso abriendo el desarrollo de mashup a los usuarios finales y a los expertos no informáticos. Los componentes y conectores estándar permiten a los diseñadores combinar recursos de mashup de todo tipo de formas complejas con facilidad. Sin embargo, las plataformas de mashup han hecho poco para ampliar el alcance de los recursos accesibles por los mashups y no han liberado a los mashups de su dependencia de datos bien estructurados y bibliotecas abiertas ( canales RSS y API públicas ).

Los facilitadores de mashup evolucionaron para abordar este problema, brindando la capacidad de convertir otros tipos de datos y servicios en recursos mashables.

Recursos web

Por supuesto, no todos los datos valiosos se encuentran dentro de las organizaciones. De hecho, la información más valiosa para la inteligencia empresarial y el apoyo a la toma de decisiones suele estar fuera de la organización. Con la aparición de aplicaciones web enriquecidas y portales web en línea, una amplia gama de procesos críticos para el negocio (como los pedidos) están disponibles en línea. Desafortunadamente, muy pocas de estas fuentes de datos distribuyen contenido en formato RSS y muy pocos de estos servicios proporcionan API de acceso público. Por lo tanto, los editores de mashup resuelven este problema proporcionando facilitadores o conectores.

Mashups versus portales

Tanto los mashups como los portales son tecnologías de agregación de contenido . Los portales son una tecnología más antigua diseñada como una extensión de las aplicaciones web dinámicas tradicionales , en las que el proceso de convertir el contenido de datos en páginas web marcadas se divide en dos fases: generación de "fragmentos" de marcado y agregación de los fragmentos en páginas. Cada fragmento de marcado se genera mediante un " portlet " y el portal los combina en una única página web. Los portlets pueden alojarse localmente en el servidor del portal o de forma remota en un servidor independiente.

La tecnología de portales define un modelo de eventos completo que abarca las lecturas y actualizaciones. Una solicitud de una página agregada en un portal se traduce en operaciones de lectura individuales en todos los portlets que forman la página ( renderoperaciones " en portlets locales, JSR 168 u getMarkupoperaciones " " en portlets remotos, WSRP ). Si se presiona un botón de envío en cualquier portlet de una página de portal, se traduce en una operación de actualización en ese portlet únicamente ( processActionen un portlet local o performBlockingInteractionen un portlet remoto, WSRP). A continuación, la actualización va seguida inmediatamente de una lectura en todos los portlets de la página.

La tecnología de portales se basa en la agregación de nivel de presentación del lado del servidor . No se puede utilizar para impulsar formas más sólidas de integración de aplicaciones, como la confirmación en dos fases .

Los mashups se diferencian de los portales en los siguientes aspectos:

El modelo de portal ha existido por más tiempo y ha tenido una mayor inversión e investigación de productos. Por lo tanto, la tecnología de portal está más estandarizada y madura. Con el tiempo, la creciente madurez y estandarización de la tecnología mashup probablemente la hará más popular que la tecnología de portal porque está más estrechamente asociada con la Web 2.0 y, últimamente, con las arquitecturas orientadas a servicios (SOA). [7] Se espera que las nuevas versiones de productos de portal agreguen eventualmente soporte para mashup mientras siguen siendo compatibles con las aplicaciones de portlet heredadas. Por el contrario, no se espera que las tecnologías mashup brinden soporte para estándares de portal.

Combinaciones de negocios

Los usos de mashups se están expandiendo en el entorno empresarial. Los mashups empresariales son útiles para integrar servicios empresariales y de datos, ya que las tecnologías de mashups empresariales brindan la capacidad de desarrollar nuevos servicios integrados rápidamente, combinar servicios internos con información externa o personalizada y hacer que estos servicios sean tangibles para el usuario empresarial a través de interfaces de navegador web fáciles de usar. [8]

Los mashups empresariales se diferencian de los mashups para consumidores en el nivel de integración con los entornos informáticos empresariales, las funciones de seguridad y control de acceso, la gobernanza y la sofisticación de las herramientas de programación (editores de mashups) utilizadas. Otra diferencia entre los mashups empresariales y los mashups para consumidores es la creciente tendencia a utilizar mashups empresariales en ofertas de software como servicio (SaaS) comerciales.

Muchos de los proveedores de tecnologías de mashups empresariales han añadido funciones SOA .

Aspectos arquitectónicos de los mashups

La arquitectura de un mashup se divide en tres capas:

Desde el punto de vista arquitectónico, existen dos estilos de mashups: basados ​​en la Web y basados ​​en el servidor. Mientras que los mashups basados ​​en la Web suelen utilizar el navegador web del usuario para combinar y reformatear los datos, los mashups basados ​​en el servidor analizan y reformatean los datos en un servidor remoto y transmiten los datos al navegador del usuario en su forma final. [9]

Los mashups parecen ser una variación de un patrón de fachada . [10] Es decir: un patrón de diseño de ingeniería de software que proporciona una interfaz simplificada a un cuerpo más grande de código (en este caso el código para agregar los diferentes feeds con diferentes API ).

Los mashups se pueden utilizar con software proporcionado como servicio ( SaaS ).

Después de varios años de desarrollo de estándares, las empresas tradicionales están empezando a adoptar arquitecturas orientadas a servicios (SOA) para integrar datos dispares y ponerlos a disposición como servicios web discretos. Los servicios web proporcionan protocolos abiertos y estandarizados para proporcionar un medio unificado de acceso a la información desde un conjunto diverso de plataformas ( sistemas operativos , lenguajes de programación , aplicaciones ). Estos servicios web se pueden reutilizar para proporcionar servicios y aplicaciones completamente nuevos dentro y entre organizaciones, lo que proporciona flexibilidad empresarial.

Véase también

Referencias

  1. ^ Fichter, Darlene. ¿Qué es un mashup? (PDF) . Consultado el 12 de agosto de 2013 .
  2. ^ "mezcla". merriam-webster.com . 31 de mayo de 2024.
  3. ^ "Enterprise Mashups: The New Face of Your SOA". REVISTA SOA WORLD. Archivado desde el original el 5 de junio de 2009. Consultado el 3 de marzo de 2010. El término mashup no está sujeto a una definición formal por parte de ningún organismo de normalización.
  4. ^ ab Clarkin, Larry; Holmes, Josh (14 de enero de 2009). "Enterprise Mashups". Revista de arquitectura MSDN . Centro de arquitectura MSDN.
  5. ^ Sunilkumar Peenikal (2009). "Mashups y la empresa" (PDF) . MphasiS - HP. Archivado desde el original (PDF) el 2013-06-02 . Consultado el 2010-02-27 .
  6. ^ "Enterprise Mashups: The New Face of Your SOA". SOA WORLD MAGAZINE. Archivado desde el original el 2009-06-05 . Consultado el 2010-03-03 . Un mashup de consumidor es una aplicación que combina datos de múltiples fuentes públicas en el navegador y los organiza a través de una interfaz de usuario de navegador simple.
  7. ^ Digna, Larry (2007). "Gartner: El futuro de los portales son mashups, SOA, más agregación". ZDNET. Archivado desde el original el 13 de abril de 2012. Consultado el 26 de diciembre de 2009 .
  8. ^ Holt, Adams (2009). "Arquitecto ejecutivo de TI, escenarios y patrones empresariales de mashup". IBM DeveloperWorks.
  9. ^ Bolim, Michael (2005). "Programación de usuario final para la Web, tesis de maestría del MIT, 2,91 MB PDF" (PDF) . págs. 22-23.
  10. ^ Patrones de diseño: elementos de software orientado a objetos reutilizable ( ISBN 0-201-63361-2 ) de Erich Gamma, Richard Helm, Ralph Johnson y John Vlissides 

Lectura adicional