Eingabehilfen

ColdFusion-Artikel

 

Flex 2: Welche Auswirkungen ergeben sich für ColdFusion-Entwickler?


Ben Forta

Ben Forta

www.forta.com*

Erstellt:
17 October 2005
Benutzer-Stufe:
Alle

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:

  • Macromedia Flex Framework 2
  • Macromedia Flex Builder 2
  • Macromedia Flex Charting Components 2
  • Macromedia Flex Enterprise Services 2

Was bedeutet das für uns ColdFusion-Entwickler?

ColdFusion und Rich-Internet-Anwendungen

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 ColdFusion 5 enthielt ein Toolkit, mit dem in ColdFusion-Ausgaben Flash-Widgets eingebettet werden konnten.
  • Seit ColdFusion MX ist in ColdFusion Flash Remoting enthalten. Hiermit können Rich-Clients in Flash entwickelt werden, indem im Back-End ColdFusion eingesetzt wird, beispielsweise ColdFusion-Komponenten (CFCs).
  • Bereits in der ersten Produktversion war es in Flex möglich, komplexe Flash-Benutzeroberflächen mit einer Anbindung an ColdFusion-Back-Ends zu erstellen.
  • In der aktuellen ColdFusion-Version (ColdFusion MX 7) ist standardmäßig ein Teil der Flex-Technologie enthalten, sodass zwar keine vollständigen Rich-Internet-Anwendungen, aber zumindest Flash-Formulare erstellt werden können.

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.

Ein völlig neues Flex

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:

  • Flex Builder 2 ist eine brandneue IDE auf Grundlage der Eclipse-Plattform. Diese stark code-orientierte Umgebung bietet sprachspezifische Unterstützung mit Farbcodierung und Inline-Hilfe, Drag & Drop-Platzierung von Steuerelementen, einen vereinfachten Ablauf für den Zyklus "Kompilieren-Debuggen-Ausführen", integriertes Debugging u.v.m. Flex Builder 2 ist sowohl als eigenständige IDE als auch als Eclipse-Plugin erhältlich und enthält alles, was sich Entwickler wünschen können.
  • Mit dem Flex Framework 2 werden wesentlich leistungsfähigere Steuerelemente eingeführt. Das Framework bietet beispielsweise ein stark überarbeitetes Datengitter, einen verbesserten Kalender, einen neuen Rich-Text-Editor (den Sie anstelle des zurecht schlecht angesehenen HTML-Tags <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.
  • Bei Flex 2 kann das Flex-Framework als Teil der Flex Builder-IDE pro Entwickler lizenziert werden. Dieses Modell unterscheidet sich von Flex 1.5, das als Server verkauft und lizenziert wurde. Dabei mussten das Flex-Framework und die Laufzeitdienste für den Servereinsatz gekauft und zur Laufzeit auf dem Server bereitgestellt werden. Ohne eine serverseitige Laufzeitumgebung fallen natürlich wichtige Funktionalitäten weg, beispielsweise Messaging-Funktionen und die bereits erwähnten Datendienste. Trotzdem denke ich, dass auf diese Weise viele Entwickler in die Lage versetzt werden, für den vergleichsweise geringen Preis einer IDE Rich-Internet-Anwendungen zu entwickeln und bereitzustellen, die über SOAP und Flash Remoting mit ColdFusion kommunizieren.

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.

Erste Schritte mit Flex 2

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.

Über den Autor

Ben Forta ist leitender Product Evangelist bei Macromedia und hat bereits zahlreiche Bücher verfasst, darunter ColdFusion Web Application Construction Kit* und die Fortsetzung Advanced ColdFusion Application Development*, darüber hinaus Bücher über SQL, JavaServer Pages, WAP, Windows-Entwicklung und andere Themen. Ben ist Mitautor der offiziellen Macromedia ColdFusion-Schulungsmaterialien, der Zertifizierungstests sowie der auf diese Tests abgestimmten Macromedia Press*-Studienhandbücher und verbringt nun einen Großteil seiner Zeit damit, weltweit über Anwendungsentwicklung zu lehren, zu referieren und zu schreiben. Sie können unter forta.com/blog* Bens Blog aufrufen und seine aktuellen Postings über ColdFusion und andere Themen lesen.