Die Erstellung von Rich Internet Applications. Ein Vergleich von aktuellen Frameworks


Seminararbeit, 2015
15 Seiten, Note: 1,0

Leseprobe

Inhaltsverzeichnis

1. Einleitung
1.1 Motivation
1.2 Ziel der Arbeit

2. Grundlagen
2.1 Classic Internet Application
2.2 Rich Internet Application
2.3 Ajax-basierte RIA
2.4 Client-basierte RIA

3. Alternativen
3.1 Frameworks
3.1.1 JavaFX
3.1.2 AngularJS
3.2 Gegenüberstellung
3.2.1 Handhabung
3.2.2 Portabilität
3.2.3 Deployment
3.2.4 Testbarkeit

4 Zusammenfassung und Ausblick
4.1 Zusammenfassung
4.2 Kritische Reflexion
4.3 Ausblick

Literatur

1. Einleitung

In diesem Kapitel wird die Motivation für diese Arbeit vorgestellt, sowie deren Ziel.

1.1 Motivation

Internet Anwendungen haben seit Beginn des Web einen enormen Wandel durchlaufen, von einzelnen Dokumenten und statischen Websites über dynamische Webanwendungen bis hin zu Desktop ähnlichen Anwendungen.

Im Zuge dessen sind die Anforderungen, die an aktuelle Internet Anwendungen gestellt werden stetig gestiegen. In diesem Kontext hat sich der Begriff Rich Internet Applications (RIA) etabliert und steht für Web-Anwendungen, die in Ihrem Look-And-Feel DesktopAnwendungen immer ähnlicher werden. Der etablierte Standard zur Entwicklung von RIAs, sind Ajax Frameworks, welche auf HTML/JavaScript und CSS basieren.

Mit der Veröffentlichung von JavaFX in der Version 2 bzw. Version 8 (JDK 8) hat Oracle eine interessante Alternative zum klassischen Ansatz auf den Markt gebracht. Diese soll es ermöglichen, Anwendungen zu entwickeln, die den heutigen Anforderungen gerecht werden.

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 1: Interesse im Zeitlichen Verlauf Google Trends[Goo14]

Vergleicht man bei Google Trends (Abbildung 1.) AngularJS (rot), als Vertreter für die Ajaxbasierten Frameworks mit JavaFX (blau), kann man feststellen, dass der Durchschnitt der Suchanfragen sich annähert. Das aktuelle Interesse zeigt jedoch, dass der etablierte Ansatz häufiger angefragt wird als die Neuentwicklung von Oracle.

1.2 Ziel der Arbeit

Das Ziel der vorliegenden Arbeit ist es, Alternativen beim Erstellen von Rich Internet Applications aufzuzeigen.

Neben AngularJS als Vertreter für die klassischen Ajax-basierten Frameworks wird JavaFX als alternativer Ansatz vorgestellt.

Darüber hinaus werden die Frameworks anhand von verschiedenen Kriterien bewertet, um schließlich ein Fazit über die Verwendung ziehen zu können.

2. Grundlagen

Seit der Veröffentlichung des ersten Webbrowsers „WorldWideWeb“ von Tim Berners-Lee hat sich das Internet rasant von einem simplen Documentsharing System zum heutigen Web 2.0 entwickelt. [Gru12]

Aus diesem Grund behandelt dieser Abschnitt die grundlegenden Begrifflichkeiten zum Thema Rich Internet Application, die verschiedenen Arten sowie deren spezielle Charakteristika.

2.1 Classic Internet Application

Zu Beginn des World Wide Web basierten klassische Internet Anwendungen auf einzelnen statischen HTML-Dokumenten, die auf einem Webserver bereitgestellt wurden.

Nutzer hatten die Möglichkeit zwischen den einzelnen Dokumenten über Links zu navigieren. Wenn ein Nutzer einen bestimmten Link ausgewählt oder eine URL aufgerufen hat, wurde ein HTTP-Request an den Server gesendet, die Seite mit einer HTTP-Response zurückgeliefert und angezeigt. Dieses synchrone -Verfahren wird in Abbildung 2 verdeutlicht.

Da die Anforderungen an Web-Anwendungen mit der Zeit weiter zunahmen, kamen weitere Ergänzungen zum bis dato vorherrschenden HTML-standard hinzu. Zum Ende der 1990er Jahre wurde Dynamic HTML eingeführt, welches das klassische Modell um dynamische Aspekte wie Cascading Stylesheets(CSS) und JavaScript erweitert. [Gru12]

Zusätzlich zu diesen Neuerungen entstanden viele weitere Technologien wie Adobe Flash und Apple QuickTime, die das Web um bereits vom Client bekannte Möglichkeiten erweitert haben.

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 2: Prinzip der Klassischen Web-Anwendungen [Far07]

Diese Änderungen führten zu einem Umbruch bei der Entwicklung von Web-Anwendungen. Das klassische Modell konnte auf diese nicht mehr angewendet werden.

In diesem Kontext entstanden neue Begriffe wie, Web 2.0 und Rich Internet Application, letzterer ist auch das Thema der Arbeit und wird im Folgenden erläutert.

2.2 Rich Internet Application

Den Begriff Rich Internet Application zu definieren ist nicht einfach, da mit RIA ein großer Bereich von Anwendungen klassifiziert wird. Marianne Busch und Nora Koch definieren dies folgendermaßen:

Rich Internet Applications (RIAs) are web applications, which use data that can be processed both by the server and the client. Furthermore, the data exchange takes place in an asynchronous way so that the client stays responsive while continuously recalculating or updating parts of the user interface.

On the client, RIAs provide a similar look-and-feel as desktop applications and the word "rich" means particularly the difference to the earlier generation of web applications. RIAs are basically characterized by a variety of interactive operating controls, the possibility of on-/offline use of the application, and the transparent usage of the client and server computing power and of the network connection. [Bus09]

Generell ist diese Definition ziemlich passend, jedoch muss man anführen, dass die Limitierung auf Web-Anwendungen und somit die Verwendung von Webbrowsern zu klein gefasst ist.

Florian Moritz führt hierzu an:

Some are of the opinion that RIAs must run in a browser and applications with facilities named above, that run without this environment, are Desktop Applications. The definition cannot be limited to Web browsers, only because most of the RIAs today run inside one. But in near future the role of browsers as the main RIA platform seem to vanish. [Mor08]

Die folgende Abbildung(Abb. 3) soll aufzeigen welche Arten von Anwendungen unter den Begriff Rich Internet Application fallen(Vertikales Rechteck) mit Blick auf die Anteile von Client- und Serververarbeitung(Horizontales Rechteck).

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 3: Kategorien von RIA und Server-/Clientseitige Verarbeitung[Mor08]

Wie man sehen kann, umfasst dieses Themengebiet nicht nur Web 2.0 und Webanwendungen, sondern auch generelle Client Anwendungen deren Verarbeitung nicht nur Clientseitig stattfindet.

In dieser Ausarbeitung werden vor allem die Rich Client Apps betrachtet, wobei hier zwischen Ajaxund Client-basierte RIAs unterschieden wird.

Abschließend wird für diese Arbeit Rich Internet Application folgendermaßen definiert:

Rich Internet Applications(RIAs) sind Anwendungen, welche Daten verwenden, die sowohl auf dem Server als auch auf dem Client verarbeitet werden. Näher werden die Daten asynchron ausgetauscht, sodass der Client durchgehend antworten kann und bei Erhalt der Informationen das Userinterface entsprechend aktualisiert.

An den Client werden dabei besondere Anforderungen gerichtet, da er im Look-and-Feel, Desktop Anwendungen ähneln muss. Der Terminus Rich soll lediglich die Anwendungen von den früheren Internet Anwendungen abgrenzen.

2.3 Ajax-basierte RIA

Wenn man von Web 2.0 und Rich Internet Application spricht, kommt einem als erstes diese Variante in den Sinn. Ajax ist aus aktuellen Web Anwendungen nicht mehr wegzudenken. Seien es komplexe Business-Anwendungen oder nur die Autovervollständigung bei der Google Suche nahezu überall wird diese Technologie verwendet.

Aber was ist Ajax überhaupt, J.J. Garrett definiert dies folgendermaßen:

Ajax isn’t a technology. It’s really several technologies, each flourishing in its own right, coming together in powerful new ways. Ajax incorporates: standards-based presentation using XHTML and CSS; dynamic display and interaction using the Document Object Model; data interchange and manipulation using XML and XSLT; asynchronous data retrieval using XMLHttpRequest; and JavaScript binding everything together. [Gar05]

Betrachtet man dies im Vergleich zu dem klassischen Modell sieht man sowohl die Unterschiede als auch die Gemeinsamkeiten. Zusätzlich zu den bestehenden Technologien wie XHTML, CSS und DOM wird hier die synchrone- durch eine asynchrone Kommunikation mit XML oder JSON als Transportmedium und JavaScript als Programmiersprache ersetzt.

Die Abbildung 4 soll den Unterschied zwischen den Kommunikationsarten verdeutlichen. Bei der klassischen Kommunikation wird eine Anfrage an den Server gesendet und dort verarbeitet, in dieser Zeit wartet der Client auf die Antwort und kann nicht weiterarbeiten. Aufgrund dessen können langen Wartezeiten entstehen, die zu einem schlechten Nutzererlebnis führen.

Ajax löst diese Problematik, in dem Client eine Ajax-Engine hinzugefügt wird, die die Anfrage an den Server sendet, jedoch nicht auf eine Antwort wartet, sondern den Client direkt freigibt.

Während der Server seine Verarbeitung durchführt, können auf dem Client bereits die nächsten Vorgänge gestartet und an den Server gesendet werden. Wird eine Aufgabe abgeschlossen so wird eine Antwort vom Server an die Ajax-Engine des Clients gesendet. Diese wird im Browser angezeigt oder gegebenenfalls

Abbildung 4: Vergleich Ajax- und Klassische Web Anwendungen verworfen, wenn sienicht mehr benötigtwird.

Abbildung in dieser Leseprobe nicht enthalten

Abbildung 4: Vergleich Ajax- und Klassische Web Anwendungen [Gar05]

2.4 Client-basierte RIA

Client-basierte RIA ähneln vom Kommunikationsmodell den Ajax-basierten sehr, jedoch wird hier auf den Einsatz von Ajax verzichtet und es werden ähnliche Technologien verwendet. Die Kommunikation läuft asynchron und sie sind komplett von Ajax, HTML und Webbrowsern unabhängig.

Ein besonderer Vorteil ist, dass es nicht nötig ist das Look-And-Feel einer Desktop Anwendung möglichst gut nachzubauen, da diese nativ läuft und dies mitbringt.

3. Alternativen

Dieses Kapitel vergleicht zwei Alternativen für die oben genannten Arten von Rich Internet Applications anhand von verschiedenen Kriterien.

3.1 Frameworks

Um die Thematik praktisch zu untermalen werden folgend zwei Frameworks vorgestellt. Dies ist zum einen AngularJS als Vertreter für die Ajax-basierten und JavaFX als Client-basiertes Framework.

[...]

Ende der Leseprobe aus 15 Seiten

Details

Titel
Die Erstellung von Rich Internet Applications. Ein Vergleich von aktuellen Frameworks
Hochschule
Fachhochschule Dortmund
Veranstaltung
Industrieseminar
Note
1,0
Autor
Jahr
2015
Seiten
15
Katalognummer
V305143
ISBN (eBook)
9783668032965
ISBN (Buch)
9783668032972
Dateigröße
1367 KB
Sprache
Deutsch
Schlagworte
JavaFX, JavaScript, RIA, Rich Internet Application, Vergleich, Ajax, AngularJS
Arbeit zitieren
Jan Schmidtken (Autor), 2015, Die Erstellung von Rich Internet Applications. Ein Vergleich von aktuellen Frameworks, München, GRIN Verlag, https://www.grin.com/document/305143

Kommentare

  • Noch keine Kommentare.
Im eBook lesen
Titel: Die Erstellung von Rich Internet Applications. Ein Vergleich von aktuellen Frameworks


Ihre Arbeit hochladen

Ihre Hausarbeit / Abschlussarbeit:

- Publikation als eBook und Buch
- Hohes Honorar auf die Verkäufe
- Für Sie komplett kostenlos – mit ISBN
- Es dauert nur 5 Minuten
- Jede Arbeit findet Leser

Kostenlos Autor werden