JĘZYK SKRYPTOWY WEDŁUG MACROMEDII

Transkrypt

JĘZYK SKRYPTOWY WEDŁUG MACROMEDII
ColdFusion MX 7 Server
RAPORT
Nowa wersja produktu firmy Macromedia dla systemu Linux: ColdFusion MX 7 Server
JĘZYK SKRYPTOWY
WEDŁUG
MACROMEDII
Nowy produkt firmy Macromedia, ColdFusion MX 7 Server, pomaga
w tworzeniu dostępnych i wydajnych aplikacji internetowych.
LARKIN CUNNINGHAM
W
prowadzenie oprogramowania
ColdFusion w wersji MX 7 [1]
zbiegło się z dziesiątą rocznicą
udostępnienia pierwszego wydania tej platformy do programowania aplikacji internetowych. Pierwotnie środowisko programistyczne
ColdFusion było napisane w C++; teraz oparte jest na platformie J2EE i działa w systemach
Linux, AIX, Mac OS X, Solaris oraz Windows.
Produkt ColdFusion został stworzony
przez firmę Allaire Corporation. Firma Macromedia przejęła go w 2001 r. Zamiast
zwiększać numer wersji do 6.0, wypuściła nowe wydanie pod nazwą ColdFusion MX.
Miało to dowodzić pokrewieństwa produktu
z innymi rozwiązaniami rodziny MX, takimi
jak Dreamweaver i Flash.
Kontynuując rozwój środowiska ColdFusion, Macromedia wprowadziła w nim istotne
ulepszenia. W najnowszej wersji wzbogacono
arsenał narzędzi do generowania treści. Są tu
nowe funkcje do tworzenia wykresów, przygotowywania raportów FlashPaper i PDF
oraz do definiowania złożonych formularzy
Flash (w tym składających się z zakładek).
Administrator
ColdFusion dostarczany jest z internetową
aplikacją do administrowania (Rysunek 1),
wspomagającą zarządzanie całym środowi-
skiem. ColdFusion Administrator umożliwia
określenie sposobu buforowania zmiennych
przez klienta, parametrów pamięci dla programów Javy i wirtualnej maszyny oraz innych ustawień, przez dostosowanie których
można zwiększyć wydajność pracy rozwiąza-
nia. W oprogramowaniu PHP odpowiednikiem tego łatwego w użyciu interfejsu jest
plik konfiguracyjny (php.ini).
Narzędzie administracyjne umożliwia także zarządzanie źródłami danych, usługami
internetowymi, zaplanowanymi zadaniami,
Aplikacje oparte na znacznikach
CFML jest językiem znaczników, a treść
CFML jest zapisywana wspólnie z HTML
w postaci stron .cfm. Zamiast tradycyjnych
metod osadzania skryptów znanych z języków PHP i ASP, w CFML stosowane są podobne do języka HTML znaczniki otwierające i zamykające. Nie cały kod CFML musi
zawierać się w znacznikach, ponieważ wiele
z nich ma swoje odpowiedniki skryptowe. Na
Wydruku 1 przedstawiono implementację
prostego zapytania SQL, po którym następuje przedstawienie jego wyników.
Zauważmy, że w znacznikach CFML można
umieszczać parametry, podobnie jak
w znacznikach języku HTML. W opisywanym
przykładzie za pomocą znacznika CFQUERY
pobrano zbiór wynikowy z bazy danych przez
połączenie MyDSN zdefiniowane narzędziem ColdFusion Administrator (więcej na
ten temat w dalszej części artykułu). Do prezentacji zbioru wynikowego służy znacznik
CFOUTPUT. Zmienne oraz wywołania funk-
WWW.LINUX-MAGAZINE.PL
cji umieszczone między symbolami krzyżyka
(#) są albo ujmowane w znaczniki CFML, albo umieszczane wewnątrz nich jako parametry. ColdFusion podstawia w ich miejsce odpowiednie wartości. W wyniku umieszczenia
zapytania jako parametru znacznika CFOUTPUT, zawartość tego znacznika zostaje
powielona dla każdego wiersza zbioru wynikowego zapytania.
Porównajmy ten kod z odpowiednikiem
w PHP5/ mysqli [2] (Wydruk 2). Dla uproszczenia pominięto kod przechwytujący wyjątki.
Jak widać na podstawie tych fragmentów
kodu, język CFML łatwiej się pisze i czyta
w porównaniu z analogicznym kodem PHP.
Dla projektanta stron WWW bez przygotowania programistycznego, CFML jest łatwiejszy i szybszy w nauce niż PHP. Wystarczy poznać kilka znaczników i można pisać
całkiem zaawansowane części serwisów
WWW.
NUMER 18 LIPIEC 2005
45
RAPORT
ColdFusion MX 7 Server
Rysunek 1: Program ColdFusion Administrator skutecznie chroni przed
Rysunek 2: Przykład osadzenia dokumentu FlashPaper na stronie
stycznością z wierszem polecenia i plikami konfiguracyjnymi.
WWW.
rozszerzeniami znaczników (patrz dalej), zabezpieczonymi zasobami „sandbox” oraz innymi aspektami działania środowiska.
W oprogramowaniu ColdFusion nie ma po-
trzeby zaglądania do plików konfiguracyjnych – większość ustawień dostępna jest
przez narzędzie administracyjne.
Bogactwo treści
Wydruk 1: empquery.cfm
<CFQUERY NAME= qryGetREmpsU
DATASOURCE= #MyDSN# >
SELECT * FROM employees
</CFQUERY>
<CFOUTPUT QUERY= qryGetEmps >
Name: #qryGetEmps.FirstName#U
#qryGetEmps.LastName#<br>
Address: #qryGetEmps.U
Address1#, #qryGetEmps.Address2#
</CFOUTPUT>
Wydruk 2: empquery.php
$dbconn = new mysqli ($dbhost,U
$dbuser, $dbpass, $dbname);
$result = $dbconn->queryU
('SELECT * FROM employees');
while ($row = $result->fetch_U
assoc ())
{
printf (Name: %s %s<br> ,U
$row['FirstName'], $rowU
['LastName']);
printf (Address: %s, %s ,U
$row['Address1'], $rowU
['Address2']);
}
46
NUMER 18 LIPIEC 2005
Bez wątpienia firmie Macromedia należy się
palma pierwszeństwa, jeśli chodzi o bogactwo
treści internetowych. Format Flash [3], stosowany przy tworzeniu animacji, gier i przyjaznych interfejsów na stronach WWW, w praktyce jest już standardem. Aplety Javy i kontrolki ActiveX wydają się przy nim nieporadne.
Nic więc dziwnego, że firma Macromedia
postanowiła rozszerzyć możliwości prezentacji treści w środowisku ColdFusion o format
Flash. W formacie tym można teraz generować wykresy i formularze wprowadzania danych; natomiast dokumenty (np. raporty)
można produkować w nowym formacie Macromedii FlashPaper [4] (Rysunek 2). Obsługiwany jest także format Adobe PDF (Porta-
ble Document Format). Treść wygenerowana
w formacie PDF lub FlashPaper po wydrukowaniu wygląda tak samo, jak w przeglądarce WWW.
W ostatnich miesiącach poprawiła się obsługa formatów Flash i PDF w systemie Linux, w związku z czym wdrożenie ColdFusion jako aplikacji intranetowej i udostępnianie treści w różnych formatach w środowisku
Linuksów nie powinno stwarzać problemów.
Znacznik CFCHART
Znacznik CFCHART służy do generowania
ładnych wykresów w formatach PNG, JPEG
lub Flash. W tym ostatnim przypadku można zdefiniować „ozdobniki”, takie jak słupki
wędrujące od poziomu osi x do zadanej wartości albo wyłaniające się wykresy kołowe.
Wykresy w każdym formacie mogą zawierać
aktywne obszary z przypisanymi adresami
URL. To z kolei stwarza możliwość przygo-
Interfejs do baz danych
Język CFML w domyślnej postaci udostępnia
abstrakcyjny interfejs do baz danych, dzięki
któremu można pisać aplikacje niezależne
od źródeł danych. Na przykład w znaczniku
CFQUERY wystarczy podać parametr DATASOURCE – ten prosty zapis zapewnia już nawiązanie połączenia z bazą i umożliwia wysłanie zapytania SQL. Podobnie jak ODBC,
ColdFusion udostępnia warstwę abstrakcji
w dostępie do baz danych. W przypadku
ColdFusion obsługuje ona połączenia przez
ODBC, jak i własne połączenia baz przez
JDBC. Do oprogramowania dołączono sterowniki źródeł danych MySQL (sprzed wersji
4.1), DB2, Informix, SQL Server, Sybase,
WWW.LINUX-MAGAZINE.PL
Oracle oraz J2EE (przez JNDI). Sterowniki
baz Oracle i Sybase są dostępne tylko w wersji Enterprise, ale źródła danych można tworzyć za pomocą własnych sterowników JDBC
(zazwyczaj polega to na skopiowaniu pliku
JAR do odpowiedniego katalogu z biblioteką
i określeniu adresu i nazwy klasy JDBC sterownika). Podobny efekt można osiągnąć
korzystając z zasobu JNDI.
Istnieją metody implementacji podobnej
warstwy abstrakcji w PHP (przez rozwiązania
ADODB i Pear DB), jednak techniki te wymagają instalowania dodatkowych plików
i dołączania ich w kodzie skryptów PHP.
ColdFusion MX 7 Server
RAPORT
Każda linia, słupek lub segment wykresu
liniowego, słupkowego lub kołowego powstaje w wyniku interpretacji jednego znacznika
CFCHARTSERIES. Za pomocą znacznika
CFCHARTDATA tworzymy pętlę z zapytaniem, w wyniku działania której powstają
kolejne punkty danych. Jak widać, dostępne
są liczne parametry umożliwiające dostosowanie wykresu do wymagań.
Flash Forms, ActionScript
i Remoting
Formularze do wprowadzania danych w formacie Flash (Flash Forms) umożliwiają realizację wielu czynności po stronie klienta
(przetwarzanie, sprawdzanie poprawności
danych i generowanie układu formularza),
udostępniają większy zestaw funkcji niż
standardowe rozwiązania HTML i JavaRysunek 3: Za pomocą znaczników CFCHART można łatwo tworzyć efektowne wykresy.
towywania wykresów z opcją uszczegóławiania, takich jak stosowane w systemach do zarządzania (Management Information Systems – MIS) czy wspomagania decyzji (Decision Support Systems – DSS). Do wyboru są
wykresy różnych typów: liniowe, słupkowe,
kołowe i rozproszone.
PHP także umożliwia tworzenie wykresów, ale wymaga do tego dodatkowego oprogramowania. Chyba najpopularniejszym rozwiązaniem jest tutaj JpGraph, obsługujący
większą liczbę typów wykresów niż ColdFusion. JpGraph jest bezpłatny w zastosowaniach niekomercyjnych. Trzeba jednak zauważyć, że wykresy ColdFusion są ładniejsze
(mają wygładzone krawędzie), a konfiguracja
rozwiązania prostsza.
Na Rysunku 3 przedstawiono wykres pokazujący poziom spamu i wirusów w ciągu
ostatnich 30 dni. Wykres powstał w wyniku
działania znaczników CFCHART pokazanych na Wydruku 3.
Rysunek 4: Formularze Flash Forms dają lep-
Wydruk 3: chart.cfm
szą kontrolę nad sposobem wprowadzania
danych przez użytkowników.
<cfchart scalefrom="0" scaleto="1" showlegend="yes" markersize="4"U
labelformat="percent"
title="Percentage Spam and Viruses - Last 30 days" backgroundcolorU
="##eeeeee"
showborder="yes" format="FLASH" xAxisTitle="Date"
yAxisTitle="Percentage of Overall" chartHeight="400" chartWidth="540"U
show3D="no" showXGridlines="yes" seriesPlacement="cluster">
<cfchartseries type="line" seriescolor="blue" serieslabel="Spam"U
markerstyle="circle">
<cfloop query="qry30days">
<cfchartdata item="#DateFormat(scan_date,"dd-mmm-yy")#U
value="#(pspam_sum + bspam_sum) / total_sum#">
</cfloop>
</cfchartseries>
<cfchartseries type="line" seriescolor="red" serieslabel="Viruses"U
markerstyle="circle">
<cfloop query="qry30days">
<cfchartdata item="#DateFormat(scan_date,"dd-mmm-yy")#"U
value="#virus_sum / total_sum#">
</cfloop>
</cfchartseries>
</cfchart>
WWW.LINUX-MAGAZINE.PL
Script oraz są łatwiejsze w implementacji od
formularzy opartych na apletach Javy. Zapewniają większą kontrolę nad sposobem
wprowadzania danych i lepsze dostosowanie
do reguł biznesowych, a ponadto przyjemniej
i wygodniej się z nich korzysta. Na Rysunku
4 pokazano przykład formularza Flash z zakładkami, kalendarzem, nagłówkami oraz
dodatkowymi elementami układu.
ActionScript jest językiem skryptowym
służącym do interakcji z aplikacjami Flash
MX. Umieszczając skrypt ActionScript w kodzie rozwiązania ColdFusion, można zapewnić komunikację z serwerem Flash Remoting, co z kolei umożliwia interakcję z zaawansowanymi aplikacjami i animacjami
Flash MX. Skrypty ActionScript działające
po stronie serwera i komunikujące się z zasobami ColdFusion może nawet napisać każdy
programista Flash MX, nawet jeśli nie zna
języka CFML. Takie rozwiązanie gwarantuje
NUMER 18 LIPIEC 2005
47
RAPORT
ColdFusion MX 7 Server
oddzielenie warstwy logicznej aplikacji od
warstwy prezentacji Flash.
Programowanie obiektowe
CFML i PHP są językami z natury strukturalnymi, ale w obu dostępne są funkcje obiektowe. Żadnego z nich nie można jednak nazwać
językiem prawdziwie obiektowym, ponieważ
nie zaimplementowano w nich wszystkich
funkcji obiektowych (znanych z języków
C++ lub Java). W języku CFML dostępne są
komponenty ColdFusion (CFC). Komponenty CFC obsługują kapsułkowanie, dziedziczenie oraz introspekcję. Komponenty CFC zapisywane są w plikach .cfc, a nie w .cfm.
Na Wydruku 4 pokazano przykładowy plik
CFC definiujący komponent o nazwie ConvertTemp. Komponent ten konwertuje stopnie Celsjusza na Fahrenheita i odwrotnie. Na
Wydruku 5 widzimy przykładowy kod CFML
wywołujący metody tego komponentu.
Funkcje obiektowe ColdFusion nie są tak
eleganckie jak te znane z języka PHP 5, ale
wystarczą do tworzenia łatwych w pielęgnacji aplikacji komponentowych.
Rozbudowa ColdFusion
Funkcjonalność ColdFusion można rozszerzać przez dodawanie własnych znaczników
napisanych w językach CFML, Java lub C++.
Kod własnego znacznika napisany w CFML
wystarczy wprowadzić do pliku, a ten umieścić
w katalogu niestandardowych znaczników
ColdFusion (odpowiednik katalogu klas). Natomiast własne znaczniki w Javie lub C++
(określane mianem znaczników CFX) trzeba
jawnie zadeklarować, używając w tym celu
programu ColdFusion Administrator. Z własnych znaczników korzysta się tak, jak ze zwykłych – tak, jakby były częścią samego języka
CFML. Rozwiązanie takie jest możliwe również w przypadku PHP, przy czym tutaj wymaga to albo dołączenia dodatkowego kodu
źródłowego do strony, albo przekompilowania
PHP z uwzględnieniem nowego modułu.
Ponieważ ColdFusion działa na bazie serwera aplikacji J2EE, programista ma także
dostęp do klas Javy w ścieżce klas JVM (katalogi WEB-INF/lib oraz WEB-INF/classes), podobnie jak można tego oczekiwać np. w serwerze Tomcat. Za pomocą znacznika CFOBJECT można tworzyć obiekty i uzyskiwać
dostęp do funkcji oraz metod. Możliwe jest
także korzystanie z obiektów JavaBeans.
Obsługiwana jest komunikacja między
CFML, JSP i stronami serwletów. Dzięki temu podczas przenoszenia rozwiązań na
CFML nie trzeba rezygnować ze starszych
48
NUMER 18 LIPIEC 2005
Listing 5: convTempForm.cfm
<cfinvoke component="convertTemp" method="ctof"
returnvariable="newtemp" temp=30>
<cfoutput>30 degrees Celsius is #newtemp# degrees Farenheit.</cfoutput>
<cfinvoke component="convertTemp" method="ftoc"
returnvariable="newtemp" temp=64>
<cfoutput>64 degrees Fahrenheit is #newtemp# degrees Celsius.</cfoutput>
aplikacji opartych na JSP i serwletach.
Funkcje CFML można dołączyć do już funkcjonujących aplikacji JSP np. w celu wykorzystania funkcji tworzenia wykresów lub raportów dostępnych w ColdFusion. I odwrotnie -jeśli istnieją pewne działania, w których
najlepiej sprawdzają się JSP lub strony serwletów, można je dołączyć do aplikacji CFML.
Wyszukiwarka
Do rozwiązania ColdFusion dołączona jest
bardzo funkcjonalna wyszukiwarka Verity.
Może ona działać niezależnie od serwera ColdFusion i może z niej korzystać wiele egzemplarzy ColdFusion jednocześnie (gdy ColdFusion
jest zainstalowany w trybie wieloserwerowym
– patrz dalej). Za pomocą programu ColdFusion Administrator należy utworzyć zasób Collection, w którym umieszczane są treści dostępne do przeszukiwania przez Verity.
Programista może korzystać ze znaczników CFML do indeksowania i przeszukiwania treści (np. plików tekstowych, dokumentów PDF czy stron HTML). Można także indeksować treść zwróconą w wyniku zapytania. Dzięki tej funkcji ColdFusion, duże porcje tekstu można przeszukiwać szybciej niż
przez zapytanie SQL SELECT, w którym to
przypadku duże pola tekstowe (np. typ danych TEXT w MySQL) nie mogą być indeksowane. Takie rozwiązanie można zastosować np. w bazie wiedzy.
W wersji ColdFusion MX 7 nowością jest
program Verity Spider. Umożliwia on dynamiczne indeksowanie całych katalogów lub
serwisów internetowych. W przeciwieństwie
do znacznika CFML CFINDEX, który służy
do tworzenia specyficznych indeksów, Verity
Spider sam dynamicznie tworzy treść do
przeszukiwania. Obsługiwane formaty to
m.in. HTML, PDF, Microsoft Office, Wordperfect i XML. Verity Spider zachowuje się
jak każdy robot internetowy i uwzględnia instrukcje umieszczone w pliku robots.txt oraz
zawartość znaczników HTML HREF, FRAME i META Refresh / Redirect. Verity Spider
umożliwia stworzenie inteligentnego mechanizmu przeszukiwania projektowanego serwisu internetowego.
Wersje
Oprogramowanie ColdFusion jest dostępne
w trzech różnych wersjach. Z wersji Developer można korzystać z poziomu komputera
lokalnego (tego, na którym zainstalowano
oprogramowanie) oraz dwóch klientów zdalnych. Tyle wystarczy, żeby niewielka grupa
programistów pracowała nad aplikacją implementowaną w tym samym egzemplarzu ColdFusion. Wersja Developer nie ma ograniczeń
funkcjonalności i można ją pobrać bezpłatnie.
Wersja Standard zawiera praktycznie
wszystkie funkcje poza mechanizmami umożliwiającymi dostrajanie wydajności i dostęp-
Wydruk 4: convertTemp.cfc
<cfcomponent>
<!-- Metoda konwertująca stopnie Celsjusza na stopnie Fahrenheita. -->
<cffunction name="ctof" output="false">
<cfargument name="temp" required="yes" type="numeric">
<cfreturn ((temp*9)/5)+32>
</cffunction>
<!-- Metoda konwertująca stopnie Fahrenheita na stopnie Celsjusza. -->
<cffunction name="ftoc" output="false">
<cfargument name="temp" required="yes" type="numeric">
<cfreturn ((temp-32)*5/9)>
</cffunction>
</cfcomponent>
WWW.LINUX-MAGAZINE.PL
ColdFusion MX 7 Server
ności. Zamiast wymieniać funkcje dostępne
w tej wersji, łatwiej jest wspomnieć o tych,
które dostępne są tylko w trzeciej i ostatniej
wersji Enterprise. Cena wersji Standard wynosi 1299 USD lub EUR. Za Enterprise trzeba
zapłacić nieco więcej (5999 USD lub EUR).
W zamian za dopłatę mamy możliwość skorzystania z funkcji klasy korporacyjnej.
Funkcje klasy korporacyjnej
w wersji Enterprise
Program Enterprise Manager umożliwia zarządzanie wieloma egzemplarzami ColdFusion na jednym serwerze. Architektura rozwiązania jest podobna do innych serwerów
J2EE, takich jak Tomcat: z jednego programu binarnego aplikacji korzysta wiele prywatnych wirtualnych maszyn Javy (JVM).
W związku z tym poszczególne aplikacje są
wzajemnie odizolowane, co zapewnia większe bezpieczeństwo i stabilność bez konieczności stosowania oddzielnych serwerów.
Aplikacje można także łączyć w klastry w celu zwiększenia wydajności i dostępności.
Do wersji Enterprise dołączone jest oprogramowanie JRun [5] – komercyjna alternatywa Tomcata. Używając JRun, kod aplikacji
ColdFusion można połączyć z kodem JSP
lub serwletów.
Aplikacje ColdFusion można implementować na bazie preferowanego serwera aplikacji J2EE. Macromedia zapewnia obsługę
rozwiązań Jrun, Weblogic i Webshpere.
Zapewniono także mechanizm ochrony na
potrzeby działania w środowiskach wirtualnego hostingu – są to bezpieczne zasoby
określane mianem „sandbox”. Sandbox jest
katalogiem, dla którego określa się zasady
zabezpieczeń: dozwolone znaczniki, funkcje,
źródła danych i adresy IP. Aplikacja działająca w takim „brodziku” nie ma dostępu do
ustawień ani plików innych aplikacji.
Użytkownik może tworzyć niestandardowe bramy zdarzeń na potrzeby interakcji
z urządzeniami mobilnymi i serwerami komunikacyjnymi lub dowolnymi innymi serwerami za pośrednictwem dowolnego protokołu sieciowego (i gniazd Javy). Można także
wykorzystać bramy dołączone do oprogramowania, takie jak SMS, XMPP (Extensible
Messaging and Presence Protocol), JMS (Java Messaging Service) firmy Sun oraz Lotus
Sametime. XMPP [6] jest rozwiązaniem
i protokołem Open Source do obsługi natychmiastowego przesyłania wiadomości; został opracowany przez fundację oprogramowania Jabber [7]. Lotus Sametime [8] jest
produktem IBM i służy do obsługi natych-
miastowych wiadomości oraz konferencji internetowych.
W wersji Enterprise można także korzystać z wydajnego, wielowątkowego mechanizmu raportowania biznesowego. Mechanizm
ten doskonale sprawdza się w systemach zarządzania MIS, jako uzupełnienie funkcji
tworzenia wykresów z możliwością uszczegółowiania.
Aplikację można zaimplementować w postaci kodu bajtowego Javy zamiast kodu źródłowego. Ma to duże znaczenie tam, gdzie
właścicielowi kodu zależy na ochronie praw
do własności intelektualnej.
Obsługiwane platformy
Oprogramowanie ColdFusion jest obsługiwane na różnych platformach, w tym Linux,
Windows, Solaris, AIX oraz Mac OS X (tylko
wersja Development). Wśród obsługiwanych
dystrybucji Linuksa Macromedia wymienia
Red Hat Enterprise Linux 2.1 i 3.0, Suse Linux Enterprise Server 8 oraz TurboLinux
8 (tylko wersja japońska). Jednak nie powinno być problemów z instalacją oprogramowania także na CentOS 3, White Box Linux
3 oraz wielu innych dystrybucjach. Teoretycznie ColdFusion powinno dać się wdrożyć
wszędzie tam, gdzie dostępna jest platforma
Javy. Obsługiwane są serwery JRun, BEA
Weblogic oraz IBM Websphere, choć instrukcja instalacji dostępna jest tylko dla serwera Tomcat. Nawet jednak w przypadku
wdrażania na innych serwerach, takich jak
JBoss czy Resin, nie należy spodziewać się
zbyt wielu problemów.
ColdFusion może działać jako samodzielny
serwer WWW lub w połączeniu z programami
Apache (wersja 1.3.27 lub nowsza; albo 2.0.43
lub nowsza), iPlanet 6.x lub Sun ONE 6.x.
Czy ColdFusion jest
dla mnie?
Trudno jednoznacznie odpowiedzieć na pytanie, czy dany użytkownik odniesie korzyści
z zastosowania ColdFusion. W przypadku
niektórych aplikacji lepiej jest zastosować
PHP, Perla lub JSP; w innych górą jest ColdFusion. Za pomocą ColdFusion można zrobić prawie wszystko to, co za pomocą innego
języka skryptowego. A jeśli jakiejś funkcji
brakuje – można ją uzupełnić kodem w Javie
lub JSP albo serwletami.
Wybór zależy od przeznaczenia aplikacji.
ColdFusion sprawdza się tam, gdzie treść
trzeba przedstawiać w postaci różnych formatów, takich jak formularze Flash, FlashPaper lub PDF. Oprogramowanie ColdFu-
WWW.LINUX-MAGAZINE.PL
RAPORT
sion można także wykorzystywać w uniwersalnych systemach zarządzania treścią. Rozwiązanie to można szybko przygotować do
pracy. Oparte jest na łatwym do nauczenia
języku znaczników, a wydajne aplikacje
można budować minimalnym wysiłkiem. Już
to wystarcza, by wiele osób zdecydowało się
nawet na droższą wersję Enterprise, która
dodatkowo zapewnia wysoką dostępność
i wydajność aplikacji o dużym znaczeniu.
Programista pracujący na platformie linuksowej ma do wyboru PHP, JSP/ serwlety
i ColdFusion. Tylko ten ostatni mechanizm
wymaga zakupienia licencji w przypadku
wdrożenia produkcyjnego; wszystkie trzy
można jednak bezpłatnie pobrać na potrzeby
samego opracowywania aplikacji. Ponieważ
coraz więcej usługodawców hostingu oferuje
za niewielką opłatą obsługę środowiska
ColdFusion, może się okazać, że nawet wykupienie licencji nie będzie konieczne. Podsumowując: osoby rozważające możliwość
skorzystania z produktu komercyjnego przed
sięgnięciem po inne rozwiązania powinny
przynajmniej wypróbować oprogramowanie
ColdFusion MX 7. ■
INFO
[1] Macromedia ColdFusion MX 7:
http://www.macromedia.com/software/coldfusion/
[2] PHP 5 i moduł the mysqli:
http://www.php.net/manual/en/ref.mysqli.php
[3] Macromedia Flash: http://www.macromedia.com/software/flash/
[4] Macromedia FlashPaper: http://www.macromedia.com/software/flashpaper/
[5] Macromedia JRun: http://www.macromedia.com/software/jrun/
[6] XMPP Protocol: http://www.xmpp.org
[7] Fundacja oprogramowania Jabber:
http://www.jabber.org
[8] Lotus Sametime: http://www.lotus.
com/products/product3.nsf/wdocs/homepage/
AUTOR
Larkin Cunningham jest jednym z założycieli DB Alliance, irlandzkiej firmy oferującej hosting WWW na platformie linuksowej
i opracowującej rozwiązania Open Source.
Specjalizuje się w aplikacjach Open Source,
administracji systemem Linux oraz programowaniu w ColdFusion i PHP. Do Autora
można pisać na adres [email protected].
NUMER 18 LIPIEC 2005
49

Podobne dokumenty