Die soeben angekündigte Flex 2-Produktlinie enthält verbesserte Tools und Dienste für das Entwickeln und Bereitstellen von Rich-Internet-Anwendungen. Wie bereits in David Wadhwanis Artikel Einführung in die Flex 2-Produktfamilie erläutert, umfasst Flex 2 folgende Technologien:
Was bedeutet das für uns ColdFusion-Entwickler?
Rücken wir die Dinge erst mal ins rechte Licht. Rich-Internet-Anwendungen sind für ColdFusion-Entwickler nicht neu. Bereits seit einiger Zeit können – mehr oder weniger einfach und effizient – in ColdFusion verschiedene RIA-Funktionalitäten genutzt werden:
In den letzten Jahren haben viele ColdFusion-Entwickler diese Funktionalität genutzt und dabei die serverseitige Produktivität der ColdFusion-Entwicklung mit den Multimedia-Interaktionsmöglichkeiten von clientseitigem Flash verbunden, um die Vorteile beider Ansätze zu kombinieren.
Es muss jedoch auch gesagt werden, dass dieser Prozess bislang alles andere als einfach war. Wir ColdFusion-Entwickler haben lange mit der auf Designer ausgelegten Authoring-Umgebung von Flash gekämpft, und auch Flex war nicht immer optimal für die Arten von Anwendungen geeignet, die wir normalerweise entwickeln.
Aber all das wird sich ändern.
Der Flex-Entwicklungsansatz ist eigentlich ideal für ColdFusion-Entwickler geeignet. Tag-basierte Abstraktionen mit Skriptunterstützung verwenden wir auch in ColdFusion – das passt also. Entwicklung nach dem N-Schichten-Modell und Trennung der Verarbeitung im Back-End von Clientinteraktionen machen wir auch (oder sollten es zumindest) – das passt ebenfalls. Einsatz von XML, Webservices und verschiedenster Back-End-Technologien ist ein wichtiger Bestandteil der von uns entwickelten Anwendungen – dass passt also auch zusammen.
Andere Aspekte von Flex 1.x waren hingegen nicht so ideal für uns. Den auf Dreamweaver basierenden Editor Flex Builder 1.5 empfinden zwar einige, aber nicht alle ColdFusion-Entwickler als ausreichend. Die Steuerfunktionen sind bei weitem nicht ausreichend, da den Steuerelementen in Flex 1.5 oft die komplexen Funktionen fehlen, die in datenorientierten Anwendungen benötigt werden. Vor allem aber sind die Lizenzierungs- und Bereitstellungsmöglichkeiten oft nicht optimal. Für einige Anwendungen werden zwar serverseitige Flex-Dienste benötigt, bei den meisten Anwendungen jedoch nicht.
Glücklicherweise werden alle diese Probleme mit Flex 2 behoben:
<textarea> verwenden können), ein Tool für die Farbauswahl u.v.m. Die meisten ColdFusion-Anwendungen sind absolut datenorientiert, und hierbei sind diese neuen und verbesserten Steuerelemente ideal. Dank neuer Datendienste wird es zudem wirklich einfach, Daten an diese Steuerelemente und zurück an die betreffende CFC zu übertragen.Darüber hinaus ist ein neuer ColdFusion-Adapter verfügbar, mit dem Daten zur Laufzeit aus ColdFusion an den Flash-Client gesendet werden können. Der Adapter übernimmt die Zuordnung von Datentypen zwischen ColdFusion und Flash ActionScript, unterstützt die Zuordnung von Objekten zwischen ColdFusion-Komponenten und ActionScript-Klassen und ermöglicht sogar den Zugriff auf ColdFusion-Sicherheitsrollen.
Kurz gesagt stellt Flex 2 meiner Meinung nach die ideale Ergänzung zu ColdFusion dar. Sie als Entwickler werden sicher bald feststellen, dass die Entwicklung und Bereitstellung von Rich-Internet-Anwendungen durch die Kombination dieser beiden Systeme so leicht wie nie zuvor gelingt.
Wenn Sie jetzt loslegen möchten, besuchen Sie am besten Macromedia Labs*, den neuen Bereich für Technologie- und Produktpreviews, Dokumentation für noch nicht veröffentlichte Produkte u.v.m. Weitere Informationen hierzu finden Sie unter Was ist Macromedia Labs?*.
In Macromedia Labs finden Sie Vorabversionen von Flex 2-Technologien wie das neue Flex Builder 2 (inklusive Flash Player 8.5) sowie den zuvor erwähnten ColdFusion-Adapter.
Also, keine Ausreden mehr. Wenn Sie bereits Flex und ColdFusion verwenden, sehen Sie sich einmal an, wie Sie mit Flex 2 die Anwendungsentwicklung verbessern und vereinfachen können. Und wenn Sie Flex noch nicht kennen, ist jetzt der beste Zeitpunkt für den Einstieg.