ColdFusion

ColdFusion

ColdFusion ist eine für Web-basierte Datenbank-Anwendungen konzipierte Middleware des Software-Herstellers Adobe Systems, die grundlegend aus den folgenden drei Teilen besteht:

  • ColdFusion Application Server (dem ersten Application Server der Welt)
  • ColdFusion Markup Language (CFML, eine Skriptsprache, die es ermöglicht, serverseitige Applikationen zu programmieren)
  • geeignete Entwicklungsumgebungen (wie zum Beispiel Eclipse oder Dreamweaver)

ColdFusion steht dabei in direkter Konkurrenz zu vergleichbaren serverseitigen Systemen wie ASP.NET, JSP/Servlet, Ruby on Rails (RoR), ZOPE (Python), Perl und PHP. Im Gegensatz zu Skriptsprachen wie Perl, PHP, Python und Ruby, die Open Source sind, ist die Originalversion von ColdFusion nicht im Quellcode verfügbar.

Inhaltsverzeichnis

Allgemeines

Mithilfe von ColdFusion lassen sich sehr schnell Webapplikationen oder Intranet-/Extranetanwendungen erstellen. Die einfache Tag-basierte Entwicklungssprache CFML ermöglicht einen einfachen Einstieg in die Programmierung und bietet erfahrenen Entwicklern sehr leistungsfähige Werkzeuge. Hierzu trägt auch die einfach gehaltene Installation und Administration des Servers bei. Ursprünglich rein prozedural ist ab Version 6.0 (ColdFusion MX) auch objektorientierte Programmierung in CFML möglich.

Ein entscheidender Unterschied zu vergleichbaren Systemen ist der serverseitige Einsatz der Indizierung einer gesamten Website mittels der implementierten Verity Engine. Damit wird für den Anwender die ansonsten übliche Indizierung hinfällig: diese lässt sich über sogenannte Collections vom Administrator sowohl für Textdateien als auch für Datenbankinhalte steuern.

Application Server

Der ColdFusion Application Server hat in entscheidenden Bereichen die Entwicklung der Web-Technologie geprägt.

Entwickelt wurde das Programm von Jeremy und seinem Bruder JJ Allaire. Sie gründeten 1994 die Allaire Corp. und vermarkteten ColdFusion und andere Produkte, wie z. B. HomeSite oder JRun. Mit WDDX wurde von Allaire schon früh ein Vorläufer zu den heutigen Webservices entwickelt, das z. B. zur Content-Syndication verwendet wurde. ColdFusion war bei seinem Erscheinen 1995 der erste Application Server überhaupt und bis heute einer der erfolgreichsten weltweit – in seinem Mutterland, den USA, ist er sogar Marktführer. Außerhalb der USA hat es ColdFusion von je her etwas schwer und vor allem in Deutschland mit seiner traditionell starken PHP-Nutzergruppe ist ein Durchbruch nicht in Sichtweite. Umso weniger, als es sich hierbei um eine proprietäre (und auch kostenpflichtige) Software handelt. Dennoch verfügt ColdFusion über eine sehr aktive Nutzergemeinde wie die verschiedenen CFUGs (ColdFusion User Groups) beweisen.

Am 16. Januar 2001 übernahm Macromedia die Allaire Corp. und integrierte die Produkte in die eigenen Produktlinien. Mit der Version ColdFusion MX (6.0) wurde das Programm vollkommen neu geschrieben und die zugrundeliegende Engine auf J2EE umgestellt. Im Jahr 2002 wurde ColdFusion von Sun als 100% Java-kompatibel zertifiziert. MX-Anwendungen laufen somit unter Bea Weblogic, genauso wie unter IBM Websphere, SunOne oder Apache Tomcat. Von Haus aus wird JRUN 4 als Application-Server mitgeliefert.

Macromedia ColdFusion MX (6.1 und 7) wird in drei verschiedenen Versionen angeboten. Die kostenlose ColdFusion Developer Edition ermöglicht Interessierten den lokal begrenzten Einstieg in die Welt von CF. Die Standard- und Enterprise-Edition hingegen sind kommerzielle Versionen, die sich nur in Details wie der unterstützten Anzahl der CPUs, den Betriebssystemen, Datenbankschnittstellen und der Clusterfähigkeit unterscheiden.

Mit der Version ColdFusion MX 7 kamen zu den bisherigen Funktionalitäten insbesondere Möglichkeiten zur Druckausgabe (PDF und FlashPaper), Reporting inkl. Report Generator, Event-Gateways (SMS, Instant Messaging usw.) und die Möglichkeit zur Generierung von XForms und FlashForms (durch die Verwendung von Adobe Flex) hinzu. Siehe auch geeignete Entwicklungsumgebungen.

Es existierten weiterhin noch „freie Implementierungen“ die es ermöglichen, ColdFusion auf weiteren Webservern / Betriebssystemen zu verwenden. Diese werden meist als Modul in den Webserver integriert. Zu nennen sind hier die Lösungen Railo, BlueDragon, Smith, CORAL und IgniteFusion. Diese Open Source Script-Engines genannten Lösungen basieren alle auf der Möglichkeit, Java-Klassen und -Bibliotheken mit dem CFML-Code zu verschmelzen. Bereits im Juni 2007 stellte das Unternehmen Smith eine vollständig in Java geschriebene ColdFusion-Cross-Plattform vor. Die derzeit ernstzunehmendste Konkurrenz erfährt das Original durch das Schweizer Unternehmen Railo Technologies, das zusammen mit den Entwicklern von JBoss einen freien CFML-Applikationsserver herausgebracht hat.[1]

Nach der Übernahme von Macromedia durch Adobe werden nun alle Macromedia-Produkte von Adobe weiterentwickelt und vertrieben. Seitdem sind mittlerweile zwei weitere Versionen von ColdFusion erschienen. Dabei ist seit Adobe ColdFusion 8[2] eine stärkere Integration in die Windows-Welt mit Einführung neuer Schnittstellen zu Microsoft Exchange Server und ASP.NET deutlich erkennbar. Daneben wurden in die Version 8 AJAX-Widgets integriert, die Unterstützung für JSON wurde implementiert sowie Optionen zur Bild- und PDF-Bearbeitung. Außerdem wurde die Performance gegenüber dem Vorgänger erhöht.

Seit Oktober 2009 gibt es die aktuelle Version Adobe ColdFusion 9. Die größte Neuerung hierbei stellt die Unterstützung von Object Relational Mapping (ORM) dar. Das ORM von ColdFusion 9 basiert auf dem aus der Java-Welt bekannten Hibernate und vereinfacht dadurch die persistente Datenhaltung enorm. Weitere Neuerungen beinhalten die enge Integration mit der auf der Open-Source-Entwicklungsumgebung Eclipse basierenden IDE ColdFusion Builder, die Verarbeitung von Microsoft Office Dateien, eine Microsoft SharePoint Integration, erweiterte Flash Interoperabilität und die Zusammenarbeit mit Adobe AIR zur Datensynchronisation.[3]

Markup Language

Die ColdFusion Markup Language (kurz CFML) ist eine Sammlung von Tags und Funktionen, die die Entwicklung von Webanwendungen stark vereinfachen. Trotzdem ist CFML eine sehr leistungsfähige Sprache die auch komplexe Technologien wie Datenbanken inkl. Stored Procedures, ORM, PDF-Generierung, WSDL, LDAP, XML, XSLT, XForms, Verity und Solr etc. über einfache HTML-ähnliche Tags anzusprechen vermag. Alternativ zur Tag-Syntax kann man auch eine Skriptsyntax ähnlich der von PHP verwenden, welche in vergangenen ColdFusion Versionen vom Parser mitunter schneller verarbeitet werden konnte. Mit diesem Set an Werkzeugen wird ein Rapid Application Development ermöglicht. 2008 wurde die Weiterentwicklung der Sprache in das CFML Advisory Committee ausgelagert.[4] Obwohl diese Gruppe von Adobe gegründet wurde, besteht sie auch aus Mitarbeitern anderer CFML Serverentwickler als auch aus Community-Mitgliedern und soll so gewährleisten, dass der Sprachstandard offen und einheitlich gehalten wird.

Die ColdFusion Markup Language diente in Teilen als Vorlage für die Entwicklung von JSP 2.0 und der JSTL. Der Sprachumfang von CFML hat sich über die Jahre permanent weiterentwickelt. Eine gravierende Neuererung sind die Fusion Components (CFC). CFCs ermöglichen dem Entwickler einen stärkeren OOP-Ansatz bei der Entwicklung von Webanwendungen zu wählen.

Wird eine Seite mit CF-Code (Dateiendung .cfm, seltener auch .cfml) aufgerufen, dann fügt der Webserver gemäß den Skriptanweisungen HTML-Code in die Seite ein und reicht sie dann an den Webbrowser des Besuchers weiter. Dem Besucher zeigt sich also nur der HTML-Quelltext des Produkts, nicht des Skripts selbst. Letzterer bleibt dem Seitenbesucher (wie auch bei anderen serverseitigen Skripten wie z. B. PHP) verborgen.

Code-Beispiel

Einfaches CFML-Skript (gibt „Hallo Welt!“ aus):

<cfoutput>Hallo Welt!</cfoutput>

Das erweiterte Skript in HTML integriert (gibt ebenfalls „Hallo Welt!“ auf der Webseite aus):

<cfset beispiel = "Hallo Welt!">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
 <html>
   <head>
    <title>Hallo-Welt-Beispiel</title>
   </head>
   <body>
    <cfoutput>#beispiel#</cfoutput>
   </body>
 </html>

Geeignete Entwicklungsumgebungen

Zur CFML-Entwicklung stehen unter anderem folgende Umgebungen zur Verfügung:

Literaturhinweise

  • Ralf Blittkowsky: Macromedia Studio MX 2004. Dynamische Websites entwickeln mit ColdFusion MX, Dpunkt, 2004, ISBN 3-89864-211-9
  • Philipp Cielen, Steffen Goldfuss, Christoph Schmitz: ColdFusion MX. Professionelle Anwendungsentwicklung fürs Web, AW, 2003, ISBN 3-8273-2068-2
  • Peter Müller: ColdFusion in 21 Tagen, M&T, 2001, ISBN 3-7723-6525-6

Weblinks

Open Source

Einzelnachweise

  1. heise-online über die erste freie ColdFusion-Engine, 5. Juni 2008
  2. Artikel von Dezember 2007 auf "Create or die"
  3. Neuerungen in ColdFusion 9
  4. Ankündigung zur Bildung des CFML Advisory Committee

Wikimedia Foundation.

Игры ⚽ Нужно сделать НИР?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Coldfusion — ist eine für Web basierte Datenbankanwendungen konzipierte Middleware, die grundlegend aus folgenden drei Teilen besteht: ColdFusion Application Server (dem ersten Application Server der Welt) ColdFusion Markup Language (CFML, eine Skriptsprache …   Deutsch Wikipedia

  • ColdFusion — Тип Скриптовый язык Разработчик Adobe Systems Incorporated О …   Википедия

  • Coldfusion — est un langage informatique middleware utilisé pour développer des applications Web, s appuyant sur un serveur applicatif du même nom. Histoire ColdFusion est un langage à base de balises syntaxiquement plus proche d HTML que d autres langages… …   Wikipédia en Français

  • ColdFusion — est un langage informatique middleware utilisé pour développer des applications Web, s appuyant sur un serveur applicatif du même nom. Histoire ColdFusion est un langage à base de balises syntaxiquement plus proche d HTML que d autres langages… …   Wikipédia en Français

  • ColdFusion — ColdFusion,   Script Sprache (Script) der Firma Allaire, die zum Entwickeln von dynamischen Internet und Intranetanwendungen dient. Das Programm steht in Konkurrenz zu den Konzepten Active Server Pages von Microsoft und Java Server Pages (JSP)… …   Universal-Lexikon

  • ColdFusion — This article is about the computer programming language. For other uses, see Cold Fusion (disambiguation). Adobe ColdFusion Original author(s) Jeremy and JJ Allaire Developer(s) …   Wikipedia

  • ColdFusion — Existen desacuerdos sobre la neutralidad en el punto de vista de la versión actual de este artículo o sección. En la página de discusión puedes consultar el debate al respecto. ColdFusion …   Wikipedia Español

  • ColdFusion Language — ColdFusion ist eine für Web basierte Datenbankanwendungen konzipierte Middleware, die grundlegend aus folgenden drei Teilen besteht: ColdFusion Application Server (dem ersten Application Server der Welt) ColdFusion Markup Language (CFML, eine… …   Deutsch Wikipedia

  • ColdFusion on Wheels — Developer(s) Wheels Core Team Initial release November 27, 2009; 23 months ag …   Wikipedia

  • ColdFusion Markup Language — CFML redirects here. For the radio station, see CFML FM. Cold Fusion Markup Language (CFML) Paradigm(s) imperative, object oriented Appeared in 1995 Designed by Jeremy Allaire Developer Adobe System …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”