Ix 12 2011_reicher_werden_kaintantzis

Click here to load reader

  • date post

    22-Oct-2014
  • Category

    Technology

  • view

    1.246
  • download

    0

Embed Size (px)

description

Der Begriff Rich Internet Application – kurz RIA – ist zwar gängig, aber nicht konkret definiert. Wer eine RIA entwickeln will, sollte genau wissen, was sie von Thin und Rich Clients unterscheidet. Und vor allem: welche neuen Funktionen HTML5 für diese Aufgabe mitbringt.

Transcript of Ix 12 2011_reicher_werden_kaintantzis

ix.1211.086-091

Rich Internet Applications (RIAs) sol-len vor allem eins gewhrleisten: ei-ne den Desktop-Clients vergleichbarekomfortable Bedienbarkeit im Browser.Google hat mit gut aussehenden undleicht zu bedienenden Anwendungenvorgemacht, wie RIAs sich prsentierenknnen. Die neue Richness im Inter-net ist allgegenwrtig. Moderne Web-Clients fr E-Mail, Wegbeschreibungenoder Suchfunktionen fr Adressen ha-ben aber bei den Anwendern auch neueErwartungen bezglich Interaktivittund Leistungsfhigkeit geweckt, die sievon Desktop-Applikationen her kennen eine Herausforderung fr die Ent-wickler neuer Applikationen. Daherlohnt es sich, die Konzepte und die Po-sitionierung von RIAs, Thin und RichClients zu beleuchten und im Kontextvon HTML5 eine aktuelle Auslegeord-nung vorzunehmen. Wer will, kann andieser Stelle in einem kleinen Quiz er-

mitteln, was er selbst unter einer RIAversteht (siehe Quiz-Kasten).

Im Fokus erfolgreicher Applikationenstehen der Benutzer und seine Aufga-ben. Nur wenn man sich auf dessen In-teraktionsverhalten konzentriert, kannman seine Erwartungen erfllen odersogar bertreffen. Dabei knnen An-forderungen an die Benutzerinterak -tion so unterschiedlich formuliert seinwie Stndige Datenerfassung und In-teraktion und Daten lesen.

Im ersten Fall ist das Eingeben vonDaten eine der Hauptaufgaben des Anwenders, beispielsweise bei einerSchadenserfassungssoftware von Ver-sicherungsmitarbeitern oder bei Ent-wicklungsumgebungen. Die Applikationsoll schnell sein und kurze Antwortzei-ten gewhrleisten. Hilfreich dabei sinddie Navigation mit der Tastatur und dasVerwenden von Tastenkrzeln fr hu-fige Aufgaben. In diesem Fall unter-

sttzt eine lokal installierte Applikationden Benutzer am besten.

Im zweiten Fall will der Benutzerschnell informiert werden. Er selbstgibt Informationen wenn berhaupt nur in Form lngeren, unformatiertenTextes in ein einziges Feld respektivewenige Felder ein. Das sind typischer-weise Webapplikationen wie Nachrich-tenportale, Blogs und Foren.

Neben der Konzentration auf die Be-nutzer gibt es betriebliche Aspekte undProjektrahmenbedingungen, die rele-vant sind. Dazu gehren Anforderungenwie das Umgehen mit unterschiedli-chen Versionen einer Applikation oderdass Applikationen auf jedem Firmen-PC vorhanden respektive von jedemFirmen-PC aus erreichbar sein mssen.

Ein hufig verlangter Aspekt ist Off -line-Fhigkeit. Beispielsweise soll einAuendienstmitarbeiter beim Kundenvor Ort eine Offerte ohne Netzverbin-dung erstellen. Wenn er zurckkommtund der Laptop am Netz ist, soll die Ap-plikation beginnen, Daten zu synchroni-sieren. Ein anderes Beispiel: Benutzersollen E-Mails offline schreiben knnen,die automatisch abgeschickt werden,wenn das Netz wieder verfgbar ist.

Will man schnell viele Personen er-reichen, dient dazu hufig eine Appli-kation, die man nicht installieren muss.Der Anwender soll nicht warten ms-sen, bis die Applikation benutzbar ist.So soll er etwa die News einer Zeitungschnell lesen knnen, ohne zuvor einPlug-in zu installieren oder ein Pro-gramm zu aktualisieren. Keine Installa-tion bedeutet zudem, dass man keineInfrastruktur fr ein effizientes undschnelles Rollout bentigt und so dieVertriebsinfrastruktur einsparen kann.

In diesem Umfeld von Forderungen,Rahmenbedingungen und Benutzer -ansprchen ist es wichtig, die unter-schiedlichen Client-Kategorien Thin,RIA und Rich auseinanderzuhalten.Nur so kann man die richtige Katego-rie und schlielich die richtige Technikfr eine Aufgabe whlen.

RIA ist nicht gleich RIADas RIA-Konzept befindet sich imSpektrum zwischen klassischen seiten-basierten Webseiten (Thin Clients) und Stand-alone-Applikationen (RichClients) (siehe Abbildung1). Zu Erste-ren gehren etwa die Internetseiten vonZeitungen, whrend man zu den Stand-alone-Applikationen Pakete wie MSOffice, Photoshop oder Entwicklungs-

86 iX 12/2011

REPORT Web-Clients

Wie HTML5 Rich Internet Applications verndert

Reicher werden Nikolaos Kaintantzis

Der Begriff Rich Internet Application kurz RIA ist zwar gngig, aber nicht konkret definiert. Wer eine RIA entwickelnwill, sollte genau wissen, was sie von Thin und Rich Clients unterscheidet. Und vor allem: welche neuen Funktionen HTML5 fr diese Aufgabe mitbringt.

ix.1211.086-091 07.11.2011 17:49 Uhr Seite 86

Copyright by Heise Zeitschriften Verlag

werkzeuge wie Eclipse rechnet. Austechnischer Sicht lassen sich RIAs indrei Kategorien einteilen:RIA mit Ajax, also auf Basis von Ja-va Script wie map.search.ch oder Goo-gle Mail, RIA mit Plug-in, zum Beispiel derRoutenplaner Map24.com, der auf Java-Applets basiert, oder Photoshop Light/Express (Flash-Client), RIA ohne Browser kann man tech-nisch als Spezialfall von RIA mit Plug-in verstehen. Der Anwender schaut sichdie Applikation im Browser mit einemPlug-in an, und wenn sie ihm gefllt,kann er sie auf den Desktop ziehenoder herunterladen. Beispiele hierfrsind Java Web Start und Adobe AIR.

HTML5 gehrt technisch zu RIAmit Ajax. Im Wesentlichen erweitertund vereinfacht es die bisherige Versionder Hypertext Markup Language. Hinzukommen viele neue JavaScript-Schnitt-stellen sowie Neuerungen in CSS3.

So weit die technische Sicht. Die An-wendersicht verdeutlicht Abbildung2.Je nher eine Client-Kategorie in denBereich Stand-alone vordringt, destomehr Vorarbeit muss der Anwenderleisten, bis er eine konkrete Applika tionbenutzen kann. Gegebenenfalls ist ernicht in der Lage, diese Vorarbeiten aus-zufhren, etwa weil er JavaScript ausGrnden der Firmen-Policy gar nichtaktivieren kann oder keine Administra-torrechte fr die Installation einer Ap-plikation auf seinem Rechner hat.

!

Fr den Anwender ist wichtig, was erinstallieren muss (Abb.2).

iX 12/2011 87

x-TRACT Webapplikationen gibt es in diversen Ausprgungen von der einfachen Webseite

bis zur Rich Internet Application , die sich fr unterschiedliche Aufgaben eignen. Wichtige Kriterien bei der Wahl der richtigen Client-Technik sind unter anderem

der Grad der Benutzerinteraktion und die durch die Projektrahmenbedingungen bestimmte Ausfhrungsumgebung.

Whrend sich bisher einige Funktionen nur durch zustzliche Bibliotheken oder Plug-ins realisieren lieen, knnen Entwickler sie jetzt nativ in Browsern nutzen, die HTML5 untersttzen.

Quiz: Was ist eine RIA?Der Begriff RIA ist allgegenwrtig, dochselten verstehen zwei Personen dasselbedarunter. Zwei Fragen sollen ermitteln,welches Verstndnis ein Leser an dieserStelle des Artikels von RIA hat (bitte diePunkte in Klammern addieren).Frage1:RIAs vereinfachen die Verteilungder Applikation, weil der Anwender (au-er dem Browser) nichts installieren muss,um mit ihr zu arbeiten.

(1) Stimme ich voll zu. (2) Stimme ich nicht zu.Frage2:RIAs bieten dieselben Mglich-keiten und denselben Bedienkomfort wielokal installierte Applikationen.(10) Stimme ich voll zu. (20) Stimme ich nicht zu.Die Auswertung des Quiz erfolgt am Endedes Artikels.

"#$#%&'(%&%&$%$

!

Aus Sicht der Informatik gibt es unterschiedliche RIA-Typen (Abb.1).

)!*

#

+,+

+

(

Der Grad der Benutzerinteraktion in einer Applikation reicht von einfachbis komplex (Abb.3).

ix.1211.086-091 07.11.2011 17:49 Uhr Seite 87

Copyright by Heise Zeitschriften Verlag

Bei der Entscheidungsfindung, wel-che Client-Kategorie ein Entwicklernutzen will, spielt auch der geforderteGrad an Interaktion mit dem User-In-terface eine wichtige Rolle. Hinsicht-lich der Dimension der Benutzerinter-aktion unterscheidet man zwischeneiner einfachen Navigation ber Bild-schirmseiten sowie interaktiven undkomplexen Vorgngen. Um die Art derBenutzerinteraktion im Spektrum ein-

fach bis komplex/hoch (siehe Ab -bildung3) einordnen zu knnen, sollteman verschiedene Fragen stellen: SindDialoge erforderlich, die beispielsweiseeinen Kunden einem Produkt zuordnen?Gehrt das schnelle Arbeiten ber Tas-tatur-Navigation zu den Anforderungen?Bentigt der Anwender Drag&Drop,um zum Beispiel einen Datensatz ausder Datenbank von einer Applikationzur anderen zu schieben? Jede mit Jabeantwortete Frage erhht die Reich-haltigkeit der Interaktion und verlangtden Einsatz einer untersttzenden Tech-nik. Nicht alle Client-Kategorien un-tersttzen die Interaktion gleicherma-en. Abbildung4 verdeutlicht dies imKontext der Benutzerinteraktion undder Ausfhrungsumgebung.

Der Anwender hat seine eigene SichtGem Abbildung4 untersttzen so-wohl Rich Clients als auch RIAs einhohes Ma an Interaktion mit der Be-nutzerschnittstelle. Die Unterschiedewerden deutlich, wenn man die Schich-ten einer Applikation betrachtet (sieheAbbildung 5).

Ein Rich Client deckt alle Schichtenvon der Datenhaltung bis zur Oberfl-chendarstellung ab. Der Server, falls ergebraucht wird, ist in der Regel nur frdie gemeinsame Datenhaltung zustn-dig eventuell auch fr einen Teil derGeschftslogik. Microsofts Word istein Bespiel fr einen Rich Client, derkeinen Server bentigt. Outlook hinge-gen ist ein Rich Client mit Server, derfr die Aufbewahrung der Mails zu-stndig ist.

Deckt ein Client mehrere Schichtenab, kann die Kommunikation zwischenihm und dem Server in tieferen Schich-ten und weniger hufig erfolgen. Solchein Client hat ein schnelleres Antwort-verhalten, bietet somit eine bessere Be-nutzeruntersttzung und erlaubt so einflssigeres Arbeiten.

Im RIA-(Ajax)-Fall ohne HTML5kann der Client maximal die Schich-ten bis zur Geschftslogik abdecken.Gleichzeitig muss immer ein Servervorhanden sein. Er kann Aufgaben biszur Prsentationslogik bernehmen.Die daraus resultierende lngere Ant-wortzeit beeintrchtigt unter Umstn-den die Interaktivitt. KomplexereUser-Interfaces reagieren meistens ei-nen Tick zu langsam, sodass ein fls-siges Arbeiten nicht immer mglichist. Einen ganzen Tag intensiv mit ei-