Mach-II oder Fusebox 4.1 für Coldfusion MX

Im Vergleich zu Fusebox ist Mach-II relativ neu auf der Liste der Coldfusion-Frameworks, hat sich aber schnell zu einem äußerst beliebten Framework in der CF-Welt entwickelt, besonders unter denjenigen Programmierern, die mit Java vertraut sind. Bis zur Veröffentlichung von Coldfusion MX 6.1 existierte Mach-II nur als Idee. Der Grund dafür ist, dass CFMX 6.1 eine Reihe wichtiger Fixes und Erweiterungen für CFCs einführte.

Der gesamte Code des Mach-II-Frameworks ist mit CFCs implementiert. Mach-II verlangt von den Entwicklern auch das Schreiben von CFCs zum Handhaben der Geschäftslogik innerhalb einer Anwendung. Von daher ist Mach-II ein objektorientiertes Coldfusion-Framework, eine effiziente Entwicklung mit Mach-II erfordert, dass man sich mit den Prinzipien objektorientierter Programmierung gut auskennt, zum Beispiel mit Konzepten wie Polymorphismus und Design Pattern.

Die Benutzer übergeben einer Mach-II-Anwendung einen „event“-Wert, und das Framework reagiert entsprechend diesem Ereignis. Dies ähnelt der „fuseaction“ von Fusebox. Ebenfalls ähnlich wie bei Fusebox schreiben Mach-II-Entwickler XML, um festzulegen, wie ein bestimmtes Ereignis behandelt werden soll. Im Unterschied zu Fusebox folgt der Ablauf einer Mach-II-Anfrage aber nicht einer festen Reihenfolge. Vielmehr können Entwickler CFCs oder XML verwenden, um zusätzliche Ereignisse festzulegen oder dynamisch zu bestimmen, welche Event-Handler auf ein Ereignis reagieren sollten. Aus diesem Grund ist Mach-II ein Framework mit „implizitem Aufruf“ (Implicit Invocation). Und genau dafür steht auch das „II“ im Namen Mach-II.

Solche impliziten Aufrufe sorgen für zusätzliche Flexibilität einer Mach-II-Anwendung, gehen aber auch zu Lasten der Performance. Fusebox hingegen kann eine fuseaction zu einer einzigen Datei „kompilieren“. Aufgrund der dynamischeren Natur von Mach-II ist dort ein solcher Schritt nicht möglich.

Praktisch die gesamte Geschäftslogik in einer Mach-II-Anwendung wird mithilfe von CFCs realisiert. Die Entwickler schreiben Listener-Komponenten, welche die CFCs des Mach-II-Frameworks erweitern. Event-Handler benachrichtigen die Listener und diese rufen im Gegenzug die CFCs auf, aus denen das Objektmodell der Anwendung besteht. Daher fungieren die Listener als eine Art Kommunikationsbrücke zwischen dem Framework und den zugrunde liegenden Geschäftsobjekten. Dies erzwingt ein gewisses Maß an Verkapselung für die Geschäftsobjekte, da sie möglichst wenig Kenntnis vom Framework haben sollen. Eine solche Verkapselung ist auch bei Fusebox möglich, wird aber vom Framework nicht erzwungen.

Ebenso wie Fusebox erlaubt auch Mach-II den Einsatz von Plugins, die an bestimmten Punkten der Bearbeitung einer Anfrage ausgeführt werden können. In Übereinstimmung mit der objektorientierten Natur von Mach-II werden auch Plugins als CFCs implementiert.

Themenseiten: Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Mach-II oder Fusebox 4.1 für Coldfusion MX

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *