ColdFusion 9.0 Resources |
When to use CFCsYou can use CFCs in the following ways:
Developing structured, reusable codeCFCs provide an excellent method for developing structured applications that separate display elements from logical elements and encapsulate database queries. You can use CFCs to create application functionality that you (and others) can reuse wherever needed, like user-defined functions (UDFs) and custom tags. If you want to modify, add, or remove component functionality, you make changes in only one component file. CFCs have several advantages over UDFs and custom tags. These advantages, which CFCs automatically provide, include all of the following:
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, do not use CFCs in place of independent, single-purpose custom tags or UDFs. Instead, 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 Creating ColdFusion Elements. Creating web servicesColdFusion 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 Using Web Services. Creating Flash Remoting elementsAdobe® Flash® applications that use Flash Remoting 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, set the access attribute
of the cffunction tag to remote.
For more information on creating CFCs for Flash Remoting, see Using Flash with CFCs. Using asynchronous CFCsColdFusion provides an event gateway that lets you send a message to a CFC asynchronously. This gateway lets you initialize processing by a CFC without waiting for the CFC to complete or return a value. You can use asynchronous CFCs that use this gateway for the following:
For more information on using asynchronous CFCs, see About event gateways. |