Adobe Flex

Das Entwicklungsframework Adobe Flex dient der Erstellung von interaktiven Benutzeroberflächen für Web- und Desktopanwendungen - sogenannten Rich Internet Applications ( RIA). Die Basis einer Flex-Applikation sind die Markup- Sprache MXML und die objektorientierte Programmiersprache ActionScript 3.0.

Die Voraussetzung für die Ausführung von Flex-Anwendungen ist die vorherige Installation eines Players in der Version 9.x auf dem Client. Dieser steht zum kostenlosen Download für Windows, Linux und Mac OS auf der Adobe Website über den u.g. Link bereit. Die Komponenten zur Erstellung einer Flex-Applikation - das sind das Software Development Kit ( SDK) und das Framework - stellt Adobe ebenso als OpenSource über den genannten Weg zur Verfügung.

FlexBuilder als professionelle Entwicklungsumgebung

Mit dem Flex Builder gibt es zudem eine professionelle Entwicklungsumgebung für Flex-Applikationen - diese ist allerdings kostenpflichtig.

Den Ausgangspunkt für eine Applikation bilden in Flex MXML und ActionScript 3.0 (AS3). Zudem stellt das Framework eine große Anzahl von direkt verwendbaren Komponenten zur Verfügung, die in der Flex-Klassenbibliothek abgelegt sind. MXML dient der Beschreibung der Benutzeroberfläche und ist eine sogenannte deklarative Markup-Sprache. MXML stellt im Gegensatz zu HTML auch Abstraktionen für die logischen Zusammenhänge in der Präsentationsschicht einer Anwendung und die Verbindung der Benutzeroberfläche mit serverseitigen Daten bereit. Ein wesentlicher Aspekt von MXML (Macromedia Flex Markup Language) ist die Trennung von Präsentationsschicht und der Businesslogik. Diese wird dann wiederum durch den Einsatz von AS3 beschrieben. Dabei ist AS3 eine Programmiersprache, die die objektorientierten Konzepte umsetzt, und in ihrer Struktur Einflüsse von Java und JavaScript erkennen lässt. Der Flex-Entwickler kann beispielsweise mit Unterstützung von AS3 Ereignis-Listener und entsprechende -Handler beschreiben, die dann andererseits Werte von Komponenteneigenschaften abrufen bzw. festlegen.

Die Verbindung von MXML und AS3 zu einer Anwendungsoberfläche wird durch den Compiler integriert. Dieser transformiert zunächst alle MXML-Beschreibungen in AS3-Klassen und erzeugt zusammen mit der AS3-Businesslogik eine sogenannte SWF- Datei, die dann wie gewohnt in eine Internet-Seite eingebunden werden kann. Das SWF Datei-Format (gesprochen: swiff, Herkunft: Shockwave von Macromedia) definiert ein spezielles Format für rechenintensive Daten und unterstützt Vektorgrafik- und Animationen, Text, Bitmap-Formate (JPG, PNG), Soundformate ( WAV, MP3) und Videoformate ( MOV, AVI, MPEG). Die Ausführung der Website mit der integrierten Flex-Applikation wird dann durch die als Plug-In verfügbare Virtual Machine des Browsers realisiert. Dazu muss zuvor in jedem Fall ein Player mindestens in der Version 9.x auf dem ausführenden System installiert sein.

Erstellung von Flex-Anwendungen

Für die Erstellung einer Flex-Anwendung mit den zugehörigen MXML- und AS3- Dateien reicht generell ein einfacher Texteditor aus. Dessen Handhabung wird aber für komplexere Projekte schnell unübersichtlich. Hier steht dann mit dem Flex Builder eine an die Struktur von Eclipse angelehnte Entwicklungsumgebung bereit. Flex Builder integriert dann alle Teile des Frameworks und des Compilers - ist aber in unbeschränkter Version kostenpflichtig.

Aufbau des Flex-Builders

Aufbau des Flex-Builders

Eine weitere Komponente ist der sogenannte LiveCycle Data Service, der zuvor auch als Flex Data Service bezeichnet wurde. Dieser besteht aus den Kern-Komponenten: Proxy Service, Remote Object Service, Message Service und Data Management Service.

Diese Services ermöglichen die Integration in Enterprise Serverapplikationen. Auf Seiten der Applikation stehen diesen die Flex Data Services zur Verfügung, die letztendlich der Integration von Daten in eine Flex-Anwendung dienen. Es stehen dazu drei verschiedene RPC-Services bereit: der HTTPService, der WebService und das RemoteObject.

Server-Struktur von Adobe Flex

Server-Struktur von Adobe Flex

In Flex werden alle Datenanfragen grundsätzlich asynchron behandelt.

Abschließend zusammengefasst die Vor- und Nachteile von Flex. Dessen Vorteile:

  • Die Applikation wird komplett auf den Client geladen.
  • Über das Netz werden nur noch die Business-Daten transportiert.
  • Mit den LiveCycle Data Services steht eine ausgereifte Technologie im Backend-Bereich zur Verfügung.
  • Flex Builder ist eine professionelle Entwicklungsumgebung.
  • Flash Player Plug-In steht nahezu für jeden Browser zur Verfügung.
  • Flex-Appliaktionen sind plattformunabhängig.

Die Nachteile von Flex:

  • Upload auf den Client kann erstmalig merkbar Zeit in Anspruch nehmen.
  • Es muss eine Version des Flashplayers in der Version 9.x installiert sein.
  • Der Flex Builder ist kostenpflichtig.
  • Der LiveCycle Data Service ist bei Einsatz von mehr als einer Zentraleinheit ( CPU) kostenpflichtig.
Informationen zum Artikel
Deutsch: Adobe Flex
Englisch:
Veröffentlicht: 29.10.2013
Wörter: 677
Tags: Web-Software
Links: Benutzeroberfläche, Web, Internet, rich Internet application (RIA), Markup
Übersetzung: EN
Sharing: