Cold Fusion

What is cold fusion

ColdFusion is a rapid application development system for professional developers who want to create dynamic Web applications and interactive Web sites. ColdFusion is an application server from Allaire. It is now more than 3 years old, so it is a bit more mature than many other application servers out there. Version 4 has just been released.

ColdFusion can be installed on Microsoft Windows NT or Sun Solaris, works with several web servers, and can access several different databases (including Oracle, Sybase, Microsoft SQL, Access). It provides the fastest way to integrate browser, server, and database technologies into powerful Web applications. With ColdFusion, you can build everything from online stores to sophisticated business systems.

Developing applications with ColdFusion does not require coding in a traditional programming language like Perl, C/C++, Visual Basic, Java, or Delphi. Instead, you build applications by combining standard HTML with a straightforward server-side markup language, the ColdFusion Markup Language (CFML).


A Comparison of PHP and ColdFusion


Platform Support: CF has a relatively limited platform selection. Windows, Solaris, Linux or HP/UX. (Note, initial feedback shows that the Linux version may outperform the Windows version by as much as 150%, woo hoo!) PHP, if you can compile it, it will run


Language: CF is built for display code. It’s scripting language is primitive and does not support standard operator syntax or user-defined functions. But, it’s really fast and easy for display pages and database interaction. PHP is built to write applications. The language is strong and very flexible. Not as easy for the easy stuff, but much easier for the hard stuff


Database Support: CF abstracts database connections, making them simple to use, and very easy to change DB platform with no code changes. (With CF I can easily develop on one database, and deploy on another.) Native DB support is only available in the Enterprise product, and limited to just a few large products. Primary DB support is through ODBC, which is fine with Windows, but is a PITA with other platforms. PHP has extremely strong native DB support. Different DBs have different command syntax, making mid-stream database changes painful. A bit more complex to retrieve results. File-System Support: CF has adequate file support, but is quirky and not feature-rich. PHP has comprehensive file system support.


Regular Expressions: CF has a basic RegEx capability. PHP is on par with PERL for Regex. Error-handling: CF has good try/catch functionality, making formal error handling possible. PHP has no formal error handling. (This can REALLY bite! Throwing error messages to the browser is not acceptable behaviour.) What little error-handling exists is inconsistent, and many errors cannot be trapped in code at all.


Search Capability: CF is bundled with Verity, a *very* capable and feature-rich “fuzzy” search engine for both file searches and database content searches. I really miss this when working with PHP. PHP has no search capability. Date-Handling: CF will recognize just about any date format and convert on-the-fly with all date functions.