Rich-Internet-Applications

Rich Internet Applications (RIA) sind Internet Anwendungen, welche über eine Web-GUI verfügen. RIAs laufen auf einem RIA-Webserver und können auf dem Desktop-Rechner sowohl Online (als Web-Anwendung) als auch Offline  (als Desktop-Anwendung) zur Verfügung stehen. RIA-Anwendungen verfügen im Zusatz zu üblichen Internet- Anwendungen über weitere Funktionen wie Drag & Drop, ein eigenes Desktop-Startmenü oder Short-Cuts (Tastenkürzel).  Tatsächlich können Rich Internet Applications auch Berechnungen auf dem Client ausführen, obwohl sie serverseitig laufen. 

Datenkompressionsalgorithmus LZW
RIAs nutzen für einen besseren Datendurchsatz den Komprimierungsalgorithmus LZW (Lempel-Ziv-Welch-Algorithmus) oder andere Kompressionsalgorithmen sowie Streaming-Techniken. 

RIA-Anwendungen und RIA-Server
Die Rich Internet Anwendung läuft auf einem Webserver, und wird vom Entwickler dort erstellt.  Bei OpenLaszlo erfolgt die Programmierung on-the-fly und über eine LZX-Datei.  Die LZX-Datei kann vom Entwickler mit einem Browser aufgerufen werden. Der OpenLaszlo-Server sendet wahlweise einen Flash- oder DHTML-Dialog.  Ein End-User kann dieses Programm ebenfalls im Browser aufrufen und als Rich Internet Anwendung nutzen.  Rich Internet Anwendungen können also als Adobe Flash-Anwendungen oder als DHTML-Anwendung erstellt werden. Oftmals werden RIAs auch als Ajax-Anwendung erstellt. Weitere Web-Technologien die zum Einsatz kommen können sind:  Silverlight (Microsoft), Programme, welche innerhalb des .NET-Frameworks arbeiten, Java-Applets, Java, DHTML in einem JavaScript-Framework, Omnis Studio, Scalable Vector Graphics, XUL (Mozilla), XAML (Windows Vista).  RIAs können auch mit Curl in der Curl Rich Internet Application Platform zur Ausführung kommen. Curl ist eine Entwicklersprache, in welcher viele Prinzipien von Programmiersprachen implementiert sind.  Damit kann man die Anzahl der Internet-Technologien verringern, welche zur Anwedung kommen müssen, um eine Internet-Anwendung zu erstellen.  In Curl sind Paradigmen von Java, VRML (Virtual Reality Modeling Language) und HTML vereint. Curl unterstützt die ereignisorientierte Programmierung und kann auch i.V.m. Datenbanken eingesetzt werden. Damit sind Anwendungen  im Bereich eShopping, eCommerce oder Internet-Handelsplattformen möglich. Curl wird durch das Browser Plug-In Curl Surge Run Time Environment von Curl Inc. beim Anwender installiert. Curl Inc. stellt auch die Curl Entwicklungsumgebung  Curl Surge Lab Integrated Development Environment zur Verfügung. Curl steht dann lokal zur Verfügung und kann aber auch als Internet Anwendung online gestellt werden. Dazu muss ein Lizenzschlüssel bei  Curl Inc. beantragt werden. 

Cloud-Computing
Rich Internet Applications sind eine Anwendung des Cloud Computing, insbesondere zu nennen ist das Konzept Software as a Service.                         
Siehe auch:    Webserver   Cloud-Computing   Curl   LZX-Algorithmus   DHTML   Browser   Plug-In   Web-Service   Mozilla-Prism   Silverlight

  Laszlo

Laszlo ist eine Auszeichnungssprache für die Entwicklungsplattform OpenLaszlo. Laszlo baut auf den Prinzipien der Objektorientierten Programmierung (OOP) auf und ist ereignisgesteuert.  Weiterhin basiert Laszlo auf XML. Mit Laszlo und OpenLaszlo können Rich Internet Applications entwickelt und bereitgestellt werden. Laszlo ist ein Add-On für Flash von Adobe Systems.  Ein Substitutionsprodukt für Laszlo ist Flex (Adobe Systems). Mit Adobe Flex können ebenfalls Rich Internet Applications (RIA) erstellt werden.  Laszlo dient als Beschreibungssprache in der Entwicklungsplattform für Rich Internet Applications OpenLaszlo.  OpenLaszlo (Laszlo Presentation Server) von Laszlo Systems ist Open Source und lizenziert unter der CPL (Common Public License).  OpenLaszlo ist eine deklarative Entwicklungsumgebung und läuft serverseitig. Damit können RIAs in direkter Ausführbarkeit erstellt werden. Der Programmierer arbeitet dabei an einer LZX-Datei, welche auf dem OpenLaszlo-Server  ausgeführt wird. Die LZX-Datei kann dann vom Entwickler mit einem Browser aufgerufen werden. Der OpenLaszlo-Server sendet wahlweise einen Flash- oder DHTML-Dialog.  Ein End-User kann dieses Programm ebenfalls im Browser aufrufen und als Rich Internet Anwendung nutzen.                                           
Siehe auch:    OpenLaszlo   LZ77-Algorithmus   LZX-Algorithmus   Rich-Internet-Applications   Silverlight   Browser   Add-On   Webserver   DHTML   Zope

  OpenLaszlo

Mit OpenLaszlo können Rich Internet Applications (RIA) entwickelt und bereitgestellt werden.  OpenLaszlo ist eine deklarative Entwicklungsumgebung und läuft serverseitig. Damit können RIAs in direkter Ausführbarkeit erstellt werden. Der Programmierer arbeitet dabei an einer LZX-Datei, welche auf dem OpenLaszlo-Server  ausgeführt wird. Die LZX-Datei kann dann vom Entwickler mit einem Browser aufgerufen werden. Der OpenLaszlo-Server sendet wahlweise einen Flash- oder DHTML-Dialog.  Ein End-User kann dieses Programm ebenfalls im Browser aufrufen und als Rich Internet Anwendung nutzen.  Laszlo ist eine Auszeichnungssprache für die Entwicklungsplattform OpenLaszlo.                                                 
Siehe auch:    Laszlo   LZX-Algorithmus   LZ77-Algorithmus   Datei-Endung-CAB   DHTML   Silverlight   

  Curl

Curl ist eine Entwicklersprache, in welcher viele Prinzipien von Programmiersprachen implementiert sind.  Damit kann man die Anzahl der Internet-Technologien verringern, welche zur Anwendung kommen müssen, um eine Internet-Anwendung zu erstellen.

Curl Rich Internet Application Platform 
Mit Curl und der Curl Rich Internet Application Platform (Curl-Plattform) können Rich Internet Applications (RIA) erstellt und ausgeführt werden.  In Curl sind Paradigmen von Java, VRML (Virtual Reality Modeling Language) und HTML vereint. Curl unterstützt die ereignisorientierte Programmierung und kann auch i.V.m. Datenbanken eingesetzt werden. Damit sind Anwendungen  im Bereich eShopping, eCommerce oder Internet-Handelsplattformen möglich. Curl wird durch das Browser Plug-In Curl Surge Run Time Environment (RTM) von Curl Inc. beim Anwender installiert. Curl Inc. bietet auch die Curl Entwicklungsumgebung  Curl Surge Lab Integrated Development Environment an. Curl steht dann lokal zur Verfügung und kann aber auch als Internet-Anwendung online gestellt werden. Dazu muss ein Lizenzschlüssel bei  Curl Inc. beantragt werden.  Die Curl Plattform stellte dabei viele Dienste und Features zur Verfügung: Möglichkeit der Entwicklung von grösseren RIA-Anwendungen und Datenstrukturen, Modulare Entwicklung und Datenabstraktion sowie Fehlermeldungen zur Compiler-Laufzeit, Prototyping,  Deklarative Inhaltsbeschreibung wie bei HTML, Möglichkeit zur Einbindung von Web Services-Funktionalitäten zur Verarbeitung von XML.  Mit der Curl RIA-Plattform können RIA-Anwendungen und Webanwendungen als Client-Server-Anwendungen aufgebaut werden.  Die Curl RIA-Plattform umfasst, neben der Curl RTM und der Curl Surge Lab IDE, noch die Curl Language und das Curl WSDK (Curl Web Services Development Kit).

Curl Web Services Development Kit 
Mit dem Curl WSDK können Daten, die von einer SOA (Service Oriented Architecture) über SOAP und WSDL geliefert werden, verarbeitet werden. Ausserdem können Daten verarbeitet werden, welche von einer  Resource Oriented Architecture (ROA) über REST (Representational State Transfer) und XML geliefert werden.

Curl Nitro und der Fit Client für Desktop 2.0 
Curl liegt aktuell (2008) in der Version Curl 6.0 bzw. Curl 7.0 (Curl Nitro) vor. Curl Nitro wird von Curl Inc. auch als Desktop 2.0 (in Anspielung auf Web 2.0) oder RIA-Client oder Fit Client genannt. RIA-Anwendungen können dann auch offline,  direkt auf dem Desktop-Rechner, also Client-seitig, ausgeführt werden. Der Fit Client unterstüzt Rich User Interfaces, Komplexe Anwendungs-Logik und eine flexible Entwicklung. Mit Curl Nitro und dem Fit Client  können RIA-Anwendungen komplett lauffähig auf dem Desktop-Rechner installiert werden, sowohl für den Online- als auch für den Offline-Betrieb. Es wird ein Startmenü mit Icons erstellt, deren Parameter einstellbar sind, sowie  Short-Cuts und eine vom Design anpassbare GUI (Skins). Weiterhin können Anwendungen konfiguriert werden, welche eine Client-seitige Datenbank nutzen, die mit der SQL-Lite Database Engine und den Curl-Standard-Technologien  zur Datenmanipulation und Datenpräsentation arbeitet.

Curl Desktop Security Model
Die Desktop-Anwendungen des Fit-Client arbeiten  im Rahmen eines Sicherheitskonzeptes, das "Sandbox-Environment" genannt wird (Curl Desktop Security Model): es handelt sich um eine lokal abgeschlossene Software-Umgebung, in der die Anwendung läuft. Der Zugriff  auf diese "Sandbox" ist nur lokal möglich und sie verfügt nur über eingeschränkte Privilegien (keine Admin-Rechte, keine Privilegien für den Kernel-Zugriff usw.).  Wenn die Curl Desktop-Anwendungen mit vollen Rechten und Privilegien arbeiten sollen, dann erfordert dies eine standardisierte Digitale Signatur, welche von einer der Zertifizierungsstellen zur Verfügung gestellt werden muss. 

Weitere RIA-Plattformen: Adobe AIR, Google Gears und Mozilla Prism
Neben Curl Nitro gibt es noch weitere, vergleichbare RIA-Desktop-Plattformen: AIR (Adobe Integrated Runtime,  auch: Apollo) von Adobe Systems, Google Gears oder, mit weniger Features: Mozilla Prism.  Curl Nitro ist eher im Unternehmensbereich und B2B-Bereich angesiedelt, während Adobe AIR eher Kunden für den B2C-Bereich anspricht. Auch Adobe AIR bietet RIA-Anwendungen für Desktop-Offline- und Web-Online-Anwendungen  und kombiniert es mit Adobe Flex. Adobe nennt dieses Konzept "Cross-Operating-System". AIR und Flex stellen somit eine Entwicklungsplattform für RIA-Anwendungen dar und unterstützen neben den Adobe-Technologien PDF und Flash auch HTML und JavaScript.  Mozilla Prism (WebRunner) von der Mozilla Foundation, ermöglicht es dem Anwender sog. "Web-Apps" zu erstellen. Dies sind Webseiten, welche wie RIA-Anwendungen eine Anwendung auf dem Desktop via Browser zur Verfügung stellen und  Short-Cuts und Startmenüeinträge einrichten. Die Web-Apps sind jedoch auf eine reduzierte Version des Mozilla Firefox-Browsers angewiesen, welchem die üblichen Bedienleisten fehlen.     
Siehe auch:    Rich-Internet-Applications   Laszlo   OpenLaszlo   Web-Service   WSDL   SOAP   HTML   XML   Mozilla-Prism   
Link: http://www.curl.com