User Guide

Table Of Contents
About ColdFusion components 203
CFCs have several advantages over UDFs and custom tags. These advantages, which CFCs
automatically provide, include all of the following:
The ability to group related methods into a single component, and to group related
components into a package
Properties that multiple methods can share
The This scope, a component-specific scope
Inheritance of component methods and properties from a base component, including the use
of the Super keyword
Access control
Introspection for CFC methods, properties, and metadata
CFCs have one characteristic that prevents them from being the automatic choice for all code
reuse. It takes relatively more processing time to instantiate a CFC than to process a custom tag.
In turn, it takes substantially more time to process a custom tag than to execute a user-defined
function (UDF). However, after a CFC is instantiated, calling a CFC method has about the same
processing overhead as an equivalent UDF. As a result, you should not use CFCs in place of
independent, single-purpose custom tags or UDFs. Instead, you should use CFCs to create bodies
of related methods, particularly methods that share properties.
For more information about UDFs, custom tags, and other ColdFusion code reuse techniques,
see Chapter 8, “Creating ColdFusion Elements,” on page 161.
Creating web services
ColdFusion MX 7 can automatically publish CFC methods as web services. To publish a CFC
method as a web service, you specify the
access="remote" attribute in the method’s cffunction
tag. ColdFusion generates all the required Web Services Description Language (WSDL) code and
exports the CFC methods. For more information on creating web services in ColdFusion, see
Chapter 36, “Using Web Services,” on page 885.
Creating Macromedia Flash Remoting elements
Flash applications that use Flash Remoting MX can easily take advantage of ColdFusion
components for business logic. In a CFC, the
cffunction tag names the function and contains
the application logic, and the
cfreturn tag returns the result to Flash.
Note: For ColdFusion component methods to communicate with Flash applications, you must set
the access attribute of the cffunction tag to remote.
For more information on creating CFCs for Flash Remoting MX, see “Using Flash with CFCs
on page 817.