NYCPHP Meetup

NYPHP.org

[nycphp-talk] CFM Downsides from Wikipedia CFM Article

Peter Sawczynec ps at blu-studio.com
Thu Feb 5 14:22:29 EST 2009


Technical commentary

IT commentators have offered various critiques of ColdFusion, discussing
both the potential advantages and disadvantages of this technology
relative to other alternatives.

    * Bootstrapping: ColdFusion is not a general purpose programming
language. It cannot be used to create certain kinds of programs or
software. For example, ColdFusion was written in Java and it would be
impossible to write ColdFusion in ColdFusion itself (a technique known
as Bootstrapping). Extending ColdFusion therefore frequently relies on
also using other general purpose programming languages.
    * Cost: Adobe ColdFusion is expensive compared to some of its
competitors, which are almost always free. Even Microsoft-based
solutions such as ASP.NET are technically free if you own a PC or server
running some version of Windows. For developers who do not wish to host
their own site (and personally purchase ColdFusion Server), shared
hosting accounts are readily available at comparable prices to PHP or
ASP.NET hosting. Note, ColdFusion is free for Academic use.
    * Extensions: ColdFusion libraries and extensions are not always
free, although there are sites dedicated to open-source ColdFusion code
and several open-source frameworks have emerged in recent years in
active development. ColdFusion can call Java libraries which alleviates
this issue.
    * OOP: ColdFusion lacks advanced object-oriented features [6] such
as providing little distinction between instance and class (virtual and
static) properties and methods. ColdFusion doesn't offer constructor
syntax per se, but rather forces an object factory pattern to return
object instances. A common idiom is to use init to indicate a method
which is the constructor for each component. Methods are implicitly
virtual if they reference the THIS scope. There are several techniques
available to provide mixin functionality.
    * Open Source: Some competing scripting languages such as PHP, Ruby,
Perl and Python are open-source. Although the language of CFML itself is
documented, Adobe ColdFusion's server code is not viewable or
modifiable. However, SmithProject and the J2EE version of BlueDragon
(OpenBD) are open-source CFML parsing engines.
    * Shared hosting: Certain features of ColdFusion such as event
gateways, creation of datasources, caching settings and classpath
additions are not readily configurable for usage in a shared hosting
environment.[7] ColdFusion 7 introduced the Admin API which allows
hosting providers to automate things such as datasource creation for
their customers.
    * Scripting: CFScript is similar to but incompatible with the
ECMAScript specification. ColdFusion does include some server-side
Actionscript functionality, however ColdFusion's server-side
Actionscript has significantly fewer features than CFML. Note: The
release of CF 8 brought CFscript closer to ECMA by introducing == for
equals, < for less than, and ++ etc.
    * Syntax: CFML syntax is very different from traditional programming
languages, which use a C-style syntax, although this is a key reason for
its success.

Warmest regards, 
 
Peter Sawczynec 
Technology Dir.
blūstudio 
941.893.0396
ps at blu-studio.com 
www.blu-studio.com 







More information about the talk mailing list