Extending ColdFusion Components And Its Impact On Page Performance

<cfcomponent
	displayname="AbstractBaseComponent"
	output="false"
	hint="Handles base functionality for CFCs.">
 
 
	<!--- Set unique ID for this instance. --->
	<cfset VARIABLES.InstanceID = CreateUUID() />
 
 
	<cffunction name="Init" access="public" returntype="AbstractBaseComponent" output="false"
		hint="Returns an initialized AbstractBaseComponent instance.">
 
		<!--- Return This reference. --->
		<cfreturn THIS />
	</cffunction>
 
 
	<cffunction name="EqualTo" access="public" returntype="boolean" output="false"
		hint="Determines if this ">
 
		<!--- Define arguments. --->
		<cfargument name="Comparable" type="any" required="true" />
 
		<!--- Try to compare this object instance to the passed in. --->
		<cftry>
 
			<!--- Compare this ID to that ID. --->
			<cfreturn NOT Compare(
				VARIABLES.InstanceID,
				ARGUMENTS.Comparable.GetInstanceID()
				) />
 
			<cfcatch>
 
				<!--- An error occurred, return false. --->
				<cfreturn false />
 
			</cfcatch>
		</cftry>
	</cffunction>
 
 
	<cffunction name="GetInstanceID" access="public" returntype="string" output="false"
		hint="Returns the instance's unique ID.">
 
		<cfreturn VARIABLES.InstanceID />
	</cffunction>
 
</cfcomponent>

For Cut-and-Paste