Mashup (Webanwendung Hybrid)
A vermanschen (Computerindustrie Jargon), in Web Entwicklung, ist ein Website oder Internetanwendung Dadurch wird Inhalte von mehr als einer Quelle verwendet, um einen einzelnen neuen Dienst zu erstellen, der in einer einzelnen grafischen Schnittstelle angezeigt wird. Ein Benutzer kann beispielsweise die Adressen und Fotos seiner Bibliothekszweige mit einer Google -Karte kombinieren, um ein Map -Mashup zu erstellen.[1] Der Begriff impliziert eine einfache, schnelle Integration, die häufig mit offenen Anwendungsprogrammierschnittstellen (Schnittstellen der Anwendungsprogrammierung) verwendet (Offene API) und Datenquellen, um angereicherte Ergebnisse zu erzielen, die nicht unbedingt der ursprüngliche Grund für die Erzeugung der Rohquellendaten waren. Der Begriff Mashup entsteht ursprünglich, etwas zu erstellen, indem Elemente aus zwei oder mehr Quellen kombiniert werden.[2]
Die Haupteigenschaften eines Mashups sind Kombination, Visualisierung und Aggregation. Es ist wichtig, vorhandene Daten für den persönlichen und beruflichen Gebrauch nützlicher zu gestalten. Mashups sind im Allgemeinen in der Lage, dauerhaft auf die Daten anderer Dienste zugreifen zu können Client -Anwendungen oder online gehostet.
In den vergangenen Jahren[wenn?]Immer mehr Webanwendungen haben APIs veröffentlicht, mit denen Softwareentwickler Daten einfach integrieren und fungieren können Soa Weg, anstatt sie selbst zu bauen. Mashups können eine aktive Rolle in der Entwicklung von von einer aktiven Rolle spielen Social Software und Web 2.0. Mashup-Kompositionswerkzeuge sind normalerweise einfach genug, um von Endbenutzern verwendet zu werden. Sie erfordern im Allgemeinen keine Programmierfähigkeiten und unterstützen eher visuelle Verkabelung von GUI -Widgets, Dienste und Komponenten zusammen. Daher tragen diese Tools zu einer neuen Vision der bei Netz, wo Benutzer in der Lage sind, einen Beitrag zu leisten.[Klarstellung erforderlich]
Der Begriff "Mashup" wird nicht offiziell durch einen Standard-Setting-Körper definiert.[3]
Geschichte
Der breitere Kontext der Geschichte des Web bietet einen Hintergrund für die Entwicklung von Mashups. Unter dem Web 1.0 Modell, Unternehmen speicherten Verbraucherdaten auf Portale und aktualisierte sie regelmäßig. Sie kontrollierten alle Verbraucherdaten, und der Verbraucher musste ihre Produkte und Dienstleistungen nutzen, um die Informationen zu erhalten.
Das Aufkommen von Web 2.0 Einführte Webstandards, die häufig in traditionellen Konkurrenten in den Verbraucherdaten entsperrten und weit verbreitet waren. Gleichzeitig tauchten Mashups auf und ermöglichte die Entwicklung neuer Dienste.
Die ersten Mashups verwendeten Mapping -Dienste oder Fotodienste, um diese Dienste mit Daten jeglicher Art zu kombinieren und daher Visualisierungen von Daten zu erstellen.[4][Fehlgeschlagene Überprüfung] Am Anfang waren die meisten Mashups auf Verbraucherbasis, aber in letzter Zeit, aber vor kurzem[wenn?] Das Mashup ist zu sehen[von wem?] als interessantes Konzept auch nützlich für Unternehmen. Business Mashups können vorhandene interne Daten mit externen Diensten kombinieren, um neue Ansichten zu den Daten zu generieren. Da war auch der freie Yahoo! Rohre Mashups kostenlos mit dem bauen Yahoo! Abfragesprache.
Arten von Mashup
Es gibt viele Arten von Mashup, wie Business Mashups, Verbraucher -Mashups und Datenmashups.[5] Die häufigste Art von Mashup ist die Verbraucher -Mashup, die sich an die breite Öffentlichkeit richtet.
- Geschäft (oder Unternehmen) Mashups Definieren Sie Anwendungen, die ihre eigenen Ressourcen, Anwendungen und Daten mit anderen externen kombinieren Internetdienste.[4] Sie konzentrieren Daten in eine einzige Präsentation und ermöglichen gemeinsame Maßnahmen zwischen Unternehmen und Entwicklern. Das funktioniert gut für eine agile Entwicklung Projekt, das eine Zusammenarbeit zwischen Entwicklern und Kunden (oder Kundenproxy, in der Regel ein Produktmanager) erfordert, um die Geschäftsanforderungen zu definieren und zu implementieren. Enterprise Mashups sind sichere, visuell reichhaltige Webanwendungen, die umsetzbare Informationen aus verschiedenen internen und externen Informationsquellen aufdecken.
- Verbraucher -Mashups Kombinieren Sie Daten aus mehreren öffentlichen Quellen im Browser und organisieren Sie sie über eine einfache Browser -Benutzeroberfläche.[6] (z.B.: Wikipediavision Kombiniert Google Map und eine Wikipedia -API)
- DatenmashupsKombinieren Sie gegenüber den Verbraucher -Mashups ähnliche Medien- und Informationen aus mehreren Quellen zu einer einzigen Darstellung. Die Kombination all dieser Ressourcen schafft eine neue und unterschiedliche Internetservice Das wurde ursprünglich nicht von beiden Quellen bereitgestellt.
Nach API -Typ
Mashups können auch durch den von ihnen verwendeten grundlegenden API -Typ kategorisiert werden, aber jede davon kann miteinander kombiniert oder in andere Anwendungen eingebettet werden.
Datentypen
- Indexierte Daten (Dokumente, Weblogs, Bilder, Videos, Einkaufsartikel, Jobs ...) verwendet von Metasarch -Motoren
- Kartografische und geografische Daten: Geolocation Software, Geovisualisierung
- Feeds, Podcasts: Nachrichtenaggregatoren
Funktionen
- Datenkonverter: Sprachübersetzer, Sprachverarbeitung, URL -Shortener...
- Kommunikation: Email, Instant Messaging, Benachrichtigung...
- Visuelle Datenwiedergabe: Informationsvisualisierung, Diagramme
- Sicherheitsbezogene: elektronische Zahlungssysteme, ID -Identifizierung...
- Redakteure
Mashup Enabler
In der Technologie, a Mashup Enabler ist ein Werkzeug, um inkompatible IT -Ressourcen in ein Formular zu verwandeln, mit dem sie leicht kombiniert werden können, um ein Mashup zu erstellen. Mit Mashup -Enabler können leistungsstarke Techniken und Tools (wie Mashup -Plattformen) die Kombination von Daten und Diensten auf neue Arten von Ressourcen angewendet werden. Ein Beispiel für ein Mashup -Enabler ist ein Werkzeug zum Erstellen eines RSS Feed aus einer Tabelle (mit der man nicht leicht zum Erstellen eines Mashups verwendet werden kann). Viele Mashup -Redakteure umfassen Mashup -Enabler, z. B. Presto Mashup Connectors, Convertigo Web Integrator oder Caspio -Brücke.
Mashup -Enabler wurden auch als "Service- und Werkzeuganbieter, [sic] beschrieben, die Mashups ermöglichen".
Geschichte
Frühe Mashups wurden von begeisterten Programmierern manuell entwickelt. Als Mashups jedoch beliebter wurden, erstellten Unternehmen Plattformen zum Aufbau von Mashups, die es Designern ermöglichen, mashups visuell zu konstruieren, indem Mashup -Komponenten miteinander verbunden werden.
Mashup-Redakteure haben die Schaffung von Mashups erheblich vereinfacht, was die Produktivität von Mashup-Entwicklern erheblich erhöht und sogar die Mashup-Entwicklung für Endbenutzer und Nicht-IT-Experten eröffnet. Standardkomponenten und Anschlüsse ermöglichen es Designern, Mashup -Ressourcen auf alle möglichen komplexen Arten zu kombinieren. Mashup-Plattformen haben jedoch wenig dazu beigetragen, den Ressourcenumfang zu erweitern, der von Mashups zugänglich ist, und Mashups nicht von ihrer Abhängigkeit von gut strukturierten Daten und offenen Bibliotheken befreit ((offene BibliothekenRSS Futtermittel und öffentlich Apis).
Mashup Enablers entwickelten sich, um dieses Problem anzugehen und die Möglichkeit zu geben, andere Arten von Daten und Diensten in masbare Ressourcen umzuwandeln.
Webressourcen
Natürlich befinden sich nicht alle wertvollen Daten in Organisationen. Tatsächlich sind die wertvollsten Informationen für Business Intelligence und Entscheidungsunterstützung häufig außerhalb der Organisation. Mit der Entstehung von Reiche Webanwendungen und Online-Webportale werden eine breite Palette von geschäftskritischen Prozessen (z. B. Bestellung) online verfügbar. Leider bieten nur sehr wenige dieser Datenquellen -Inhalte im RSS -Format und nur wenige dieser Dienste öffentlich zugängliche APIs. Mashup -Redakteure lösen dieses Problem daher durch Bereitstellung von Enabler oder Anschlüssen.
Mashups gegen Portale
Mashups und Portale sind beide Inhaltsaggregation Technologien. Portale sind eine ältere Technologie, die als Erweiterung auf traditionelles Gebiet entwickelt wurde Dynamische Webanwendungen, in dem der Prozess des Konvertierens von Dateninhalten in markierte Webseiten in zwei Phasen aufgeteilt ist: Erzeugung von Markup-Fragmenten und Aggregation der Fragmente in Seiten. Jedes Markup -Fragment wird von einem "erzeugt"Portlet", und das Portal kombiniert sie zu einer einzelnen Webseite. Portlets können lokal auf dem Portalserver oder remote auf einem separaten Server gehostet werden.
Die Portal -Technologie definiert ein komplettes Ereignismodell, das Lese- und Aktualisierungen abdeckt. Eine Anfrage nach einer Gesamtseite auf einem Portal wird in alle Portlets, die die Seite bilden, in einzelne Lesevorgänge übersetzt ("machen
"Operationen auf lokaler, JSR 168 Portlets oder "Getmarkup
"Operationen auf Fernbedienung, WSRP Portlets). Wenn auf einer Portal -Seite eine Sendetaste auf einem Portlet gedrückt wird, wird sie allein in eine Aktualisierungsoperation übersetzt (allein auf diesem Portlet (ProzessAktion
auf einem lokalen Portlet oder PerformBlockingsinteraction
Auf einer Fernbedienung, WSRP -Portlet). Das Update folgt dann sofort von einer Lektüre auf alle Portlets auf der Seite.
Bei der Portal-Technologie handelt es sich um serverseitig, Präsentationsstufe Anhäufung. Es kann nicht verwendet werden, um robustere Formen der Anwendungsintegration wie z. Zwei-Phasen-Commit.
Mashups unterscheiden sich in der folgenden Hinsicht von den Portalen:
Portal | Vermanschen | |
---|---|---|
Einstufung | Ältere Technologie, Erweiterung des herkömmlichen Webservermodells mit gut definiertem Ansatz | Verwendet neuere, locker definierte "Web 2.0" -Techniken |
Philosophie/Ansatz | Ansätze Aggregation, indem sie die Rolle des Webservers in zwei Phasen aufteilt: Markup -Generierung und Aggregation von Markup -Fragmenten | Verwendet APIs, die von verschiedenen Content -Websites bereitgestellt werden, um den Inhalt auf andere Weise zu aggregieren und wiederzuverwenden |
Inhaltsabhängigkeiten | Aggregate Präsentationsorientierte Markup-Fragmente (HTML, WML, VoiceXML usw.) | Kann auf reinen XML-Inhalten und auch auf Präsentationsorientierungen (z. B. HTML) arbeiten (z. B. HTML) |
Standortabhängigkeiten | Traditionell findet die Inhaltsaggregation auf dem Server statt | Die Inhaltsaggregation kann entweder auf dem Server oder auf dem Client stattfinden |
Aggregationsstil | "Salat Bar"Stil: Aggregierte Inhalte werden" Seite an Seite "ohne Überschneidungen dargestellt | "Schmelztiegel"Stil - individueller Inhalt kann in irgendeiner Weise kombiniert werden, was zu willkürlich strukturierten Hybridinhalt führt |
Ereignismodell | Lesen und Aktualisieren von Ereignismodellen werden über eine bestimmte Portlet -API definiert | Crud Operationen basieren auf SICH AUSRUHEN Architekturprinzipien, aber es gibt keine formale API |
Relevante Standards | Das Portlet -Verhalten wird nach Standards geregelt JSR 168, JSR 286 und WSRP, obwohl Portal-Seitenlayout und Portalfunktionalität undefiniert und herstellerspezifisch sind | Grundstandards werden XML als austauscht als SICH AUSRUHEN oder Webdienste. RSS und Atom häufig verwendet werden. Spezifischere Mashup -Standards wie z. EMML auftauchen. |
Das Portalmodell gibt es länger und hat größere Investitions- und Produktforschung. Die Portal -Technologie ist daher standardisierter und reifer. Im Laufe der Zeit wird die zunehmende Reife und Standardisierung der Mashup -Technologie sie wahrscheinlich populärer als die Portal -Technologie machen, da sie enger mit Web 2.0 und in letzter Zeit verbunden ist Service-orientierte Architekturen (SOA).[7] Es wird erwartet, dass neue Versionen von Portalprodukten schließlich die Mashup -Unterstützung hinzufügen und gleichzeitig Legacy -Portlet -Anwendungen unterstützen. Im Gegensatz dazu werden Mashup -Technologien nicht erwartet, dass sie Portalstandards unterstützen.
Business Mashups
Die Nutzung von Mashup wächst im Geschäftsumfeld. Business Mashups sind nützlich für die Integration von Geschäfts- und Datendiensten, da Business Mashups-Technologien die Möglichkeit bieten, neue integrierte Dienste schnell zu entwickeln, interne Dienste mit externen oder personalisierten Informationen zu kombinieren und diese Dienste über benutzerfreundliches Web greifbar für den Geschäftsbenutzer zu machen Browser -Schnittstellen.[8]
Business Mashups unterscheiden sich von Verbraucher -Mashups in der Integrationsstufe in die Unternehmensumgebungen, die Sicherheits- und Zugangskontrollfunktionen, die Governance und die Raffinesse der verwendeten Programmierwerkzeuge (Mashup -Editoren). Ein weiterer Unterschied zwischen Business -Mashups und Verbraucher -Mashups ist ein wachsender Trend, Business Mashups in kommerziell Software als Dienst (SaaS) Angebot.
Viele der Anbieter von Business Mashups Technologies haben hinzugefügt Soa Merkmale.
Architektonische Aspekte von Mashups
Die Architektur eines Mashups ist in drei Schichten unterteilt:
- Präsentation / Benutzerinteraktion: Dies ist das Benutzeroberfläche von Mashups. Die verwendeten Technologien sind Html/Xhtml, CSS, JavaScript, Asynchrone JavaScript und XML (Ajax).
- Webdienste: Die Funktionalität des Produkts kann mit API -Diensten zugegriffen werden. Die verwendeten Technologien sind Xmlhttprequest, XML-RPC, JSON-RPC, SEIFE, SICH AUSRUHEN.
- Daten: Umgang mit den Daten wie Senden, Speichern und Empfangen. Die verwendeten Technologien sind Xml, JSON, KML.
Architektonisch gibt es zwei Arten von Mashups: webbasiert und serverbasiert. Wobei webbasierte Mashups normalerweise den Benutzer verwenden Webbrowser Um die Daten zu kombinieren und neu formatieren, analysieren und formatieren serverbasierte Mashups die Daten auf einer Fernbedienung und formatieren Sie sie neu formatieren Server und übertragen Sie die Daten in seiner endgültigen Form an den Browser des Benutzers.[9]
Mashups scheinen eine Variation von a zu sein Fassadenmuster.[10] Das heißt: ein Software -Engineering -Designmuster, das eine vereinfachte Schnittstelle zu einem größeren Codekörper bietet (in diesem Fall der Code, um die verschiedenen Feeds mit unterschiedlichen Feeds zu aggregieren Apis).
Mashups können mit Software verwendet werden, die als Service bereitgestellt wird (Saas).
Nach mehreren Jahren der Standardentwicklung beginnen Mainstream -Unternehmen zu adoptieren Service-orientierte Architekturen (SOA), um unterschiedliche Daten zu integrieren, indem sie als diskrete Webdienste verfügbar gemacht werden. Webdienste bieten offen, standardisiert Protokolle Bereitstellung eines einheitlichen Mittel zum Zugriff auf Informationen von verschiedenen Plattformen (Betriebssysteme, Programmiersprachen, Anwendungen). Diese Webdienste können wiederverwendet werden, um völlig neue Dienste und Anwendungen innerhalb und zwischen Organisationen bereitzustellen und die Unternehmensflexibilität zu bieten.
Siehe auch
- Mashup (Kultur)
- Mashup (Musik)
- Open Mashup Alliance
- Offene API
- Yahoo! Rohre
- Webhook
- Internetportal
- Web -Scraping
Verweise
- ^ Fichter, Darlene. Was ist ein Mashup? (PDF). Abgerufen 12. August 2013.
- ^ "vermanschen". Merriam-webster.com.
- ^ "Enterprise Mashups: Das neue Gesicht Ihres SOA". SOA World Magazine. Abgerufen 2010-03-03.
Der Begriff Mashup ist nicht formeller Definition aus irgendeiner Standards-Festlegungspflicht ausgesetzt.
- ^ a b Clarkin, Larry; Holmes, Josh. "Enterprise Mashups". MSDN Architecture Journal. MSDN Architekturzentrum.
- ^ Sunilkumar Peenikal (2009). "Mashups und das Enterprise" (PDF). MPhasis - HP. Archiviert von das Original (PDF) Am 2013-06-02. Abgerufen 2010-02-27.
- ^ "Enterprise Mashups: Das neue Gesicht Ihres SOA". SOA World Magazine. Abgerufen 2010-03-03.
Ein Verbraucher -Mashup ist eine Anwendung, die Daten aus mehreren öffentlichen Quellen im Browser kombiniert und diese über eine einfache Browser -Benutzeroberfläche organisiert.
- ^ Digna, Larry (2007). "Gartner: Die Zukunft der Portale ist Mashups, SOA, mehr Aggregation". ZDNET.
- ^ Holt, Adams (2009). "Executive IT -Architekt, Mashup -Geschäftsszenarien und Muster". IBM Developerworks.
- ^ Bolim, Michael (2005). "Endbenutzerprogrammierung für das Web, MIT MS-These, 2,91 MB PDF" (PDF). S. 22–23.
- ^ Entwurfsmuster: Elemente wiederverwendbarer objektorientierter Software ( ISBN0-201-63361-2) von Erich Gamma, Richard Helm, Ralph Johnson und John Vlisides
Weitere Lektüre
- Ahmet Soylu, Felix Möstritscher, Fridolin Wild, Patrick de Causmaecker, Piet Desmet. 2012. "Mashups von Orchestrierungs- und Widget-basierten persönlichen Umgebungen: Schlüsselherausforderungen, Lösungsstrategien und eine Anwendung." Programm: Elektronische Bibliotheks- und Informationssysteme 46 (4): 383–428.
- Endres-Niggemeyer, Brigitte ed. 2013. Semantische Mashups. Intelligente Wiederverwendung von Webressourcen. Springer. ISBN978-3-642-36402-0 (Druck)