Title: Macromedia Cold Fusion: A Brief Overview
1(Macromedia) Cold Fusion A Brief Overview
- What is Cold Fusion?
- An example of CF code
- How does it compare with the others
- - PHP
- - ASP
- - CGI/Perl
- Summary
-
2What is Cold Fusion?
Cold Fusion (formerly owned by Allaire purchased
by Macromedia in 2001) Is A Fast Reliable Way To
Rapidly Build And Deploy Scalable Solutions That
Integrate Browser, Server, And Database
Technologies. Cold Fusion Uses A Tag Based (like
html), Server Scripting Language That Is Ideal
For Programming Web Applications. Cold Fusion
Runs Entirely On The Server, So No Browser
Plug-ins Are Needed. Cold Fusion Can Be Used To
Integrate Any ODBC Database, Such As Microsoft
Access, Excel, SQL Server, Dbase, FoxPro, Oracle,
And Plain Text Files Into Your Web Site. Beyond
Database Integration, Cold Fusion Supports 70
Server Side Tags, 200 Functions, And Over 800
Third Party Components. Current server version is
5 at a cost of 1295.00 for the Professional
Edition. Enterprise Edition is 4,995.00. Use
with Cold Fusion 5 Ultradev Studio.
3What is Cold Fusion?
Frequently used tags de templateincludes/navleft.cfm
GetFac.fac_Course1
signs identify CF
variables
4What is Cold Fusion?
works with SQL nest SQL statement inside CF
tags name"GetFac" usernamejohndoe"
password9008xyz" SELECT fac_ID,
fac_FirstName, fac_MiddleName, fac_LastName,
fac_Title, fac_OfficeNumber, fac_Phone, fac_Fax,
fac_Email, fac_Webpage, fac_Education,
fac_Course1, fac_Course2, fac_Course3,
fac_Course4, fac_Course5, fac_Bio,
fac_Activities FROM tblFaculty WHERE fac_ID
FACID
5An example of Cold Fusion code
usernamejanedoe" password8877" SELECT
alumbod_lname, alumbod_fname, alumbod_email,
alumbod_class, alumbod_title FROM
tbl_0102alumBoard ORDER BY alumbod_lname
GetAlumBOD_NumRows
GetAlumBOD.RecordCount
Owen_at_Vanderbilt - Alumni amp Development
Board Members pe" content"text/html charsetiso-8859-1" rel"stylesheet" href"../styles/ogsm.css"
type"text/css"
6An example of Cold Fusion code (cont)
color"666666"
OFFICERS query"GetAlumBOD" GetAlumBOD.alumbod_title neq ""
GetAlumBOD.alumbod_fname
GetAlumBOD.alumbod_lname,
GetAlumBOD.alumbod_title
GetAlumBOD.alumbod_class
OD.alumbod_email" GetAlumBOD.alumbod_Email
7CF vs other Web App Programs
Break-down of current internet program usage by
percentage PHP 30 asp 48 jsp 2 cfm
20 as of March 4, 2002, from AltaVista
stats http//php.weblogs.com/popularity
8CF vs PHP (http//php.weblogs.com/php_vs_cold_fusi
on)
CF Platforms NT, Solaris 7 or higher, HP-UX
11, or RedHat 6.1 or higher Any webserver that
has ISAPI, WSAPI, NSAPI, CGI, or module
extensions. Language Primitive, but
passable Database Great syntax and abstraction
File handling Adequate RegEx Adequate Error
Handling Good Search Outstanding (comes
bundles with Verity) Date-Handling Nearly
idiot-proof Cost to
PHP Platforms Where do you want to run
today? Language Feature-rich and flexible
Database Great native support, bloated syntax
File handling Comprehensive RegEx Outstanding
Error Handling Poor Search Non-Existent
Date-Handling Primitive Cost null
9CF vs ASP IIS 3.0 (http//www.houseoffusion.com/ho
f/body/asp.cfm)
Syntax ASP script-based, developer friendly
supports VB syntax. CF tag-based, html author
friendly. Supports JS style scripting as
well. ASP has support for multiple, extensible
scripting languages. CF's tag syntax is simpler
and easier
DB connectivity ASP Database connectivity
through ADO COM object - ODBC CF Database
connectivity through tags - ODBC, Native drivers,
OLE DB, ADO COM objects, etc. The CF DB tags are
somewhat easier to use than ASP ADO objects.
10CF vs ASP IIS 3.0 (http//www.houseoffusion.com/ho
f/body/asp.cfm)
State Management ASP dynamic, using a temporary
cookie to identify a server side object with
configurable expiration CF static across user
sessions, using a permanent cookie with storage
in the Windows registry/database, or dynamic just
like ASP's CF will do state management just like
ASP, or it can preserve state across browser
sessions making it more flexible.
Debugging ASP error message sent to browser upon
runtime errors, or not. On/Off switch, no
customization. CF configurable debugging
information (including SQL debugging info) sent
to browser upon runtime errors, can be restricted
to certain IP addresses CF has by far the better
debugging.
11CF vs CGI/Perl
The Common Gateway Interface (CGI) is a protocol
designed to pass information from the browser to
the server, and back again. For awhile it was
the only real solution for producing dynamic data
on web sites. Perl is the language of choice for
implementing CGI because its strengths lie in the
text processing so necessary for handling all
kinds of information. But Perl is a full-blown
language that exists beyond the confines of CGI,
and in many cases that's more than you need.
Although Perl works beautifully for web
development, it wasn't designed specifically for
it. Perl designed more to work on Unix
platform. Some debate as to whether Perl is more
secure than CF. CF much easier and faster to
write than Perl.
12Summary
If you can handle the price tag and have good
familiarity with html and want to learn to
quickly develop basic to sophisticated web
applications, Cold Fusion is probably your best
bet. The program is robust, very well supported
and user and platform-friendly. Non-programmers
especially should find a relatively short
learning curve with plenty of canned applications
ready to drop into their site, as well as a
strong user community. Nashville has a Cold
Fusion users group http//www.ncfug.org/index.cfm
Visit http//www.macromedia.com/software/coldfus
ion/productinfo/competitive/ for more information.