More CFC Best Practice questions

2005-08-29 Thread Burns, John D
I'm getting ready to start a new app and there are some things I've
learned from other apps that I'm going to implement into this app as far
as CFCs go. I saw the thread concerning the THIS scope which helped to
get some different people's takes on its use. I was wondering if anyone
else would like to post personal or recognized best practices.  I am
especially interested in scoping instances of components. I always have
a hard time deciding which scopy to put instances of CFCs into for
different purposes and which kinds of methods I should have in each.
Sometimes, I've overloaded the application scope and end up locking my
application to death for almost everything, but then other times, I
think I put stuff in session that belongs in application. Any advice
would be appreciated, as well as any other best practices that you'd
care to share. I'm always willing to learn. Thanks.
 
John Burns
Certified Advanced ColdFusion MX Developer
Wyle Laboratories, Inc. | Web Developer
 
 


~|
Logware (www.logware.us): a new and convenient web-based time tracking 
application. Start tracking and documenting hours spent on a project or with a 
client with Logware today. Try it for free with a 15 day trial account.
http://www.houseoffusion.com/banners/view.cfm?bannerid=67

Message: http://www.houseoffusion.com/lists.cfm/link=i:4:216668
Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4
Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4
Donations  Support: http://www.houseoffusion.com/tiny.cfm/54


Re: More CFC Best Practice questions

2005-08-29 Thread Dave Carabetta
On 8/29/05, Burns, John D [EMAIL PROTECTED] wrote:
 I'm getting ready to start a new app and there are some things I've
 learned from other apps that I'm going to implement into this app as far
 as CFCs go. I saw the thread concerning the THIS scope which helped to
 get some different people's takes on its use. I was wondering if anyone
 else would like to post personal or recognized best practices.  I am
 especially interested in scoping instances of components. I always have
 a hard time deciding which scopy to put instances of CFCs into for
 different purposes and which kinds of methods I should have in each.
 Sometimes, I've overloaded the application scope and end up locking my
 application to death for almost everything, but then other times, I
 think I put stuff in session that belongs in application. Any advice
 would be appreciated, as well as any other best practices that you'd
 care to share. I'm always willing to learn. Thanks.
 

Your best bet is to search the archives of this list. This topic gets
beaten to death every month or two and you'll find a wealth of
information in past threads that you can choose to apply or not apply
to your development cycle. What you'll find is that best practices
is a very subjective theme, with only a few truly necessary must-dos
(i.e., var scoping local variables, including query names). As for
what scope you store component instances in, how they're called, etc.,
that's all up to you and nobody is going to chime in with a you must
do it this way or it's incorrect answer for you. Sorry it's a bit
gray, but that's just the reality.

Regards,
Dave.

~|
Find out how CFTicket can increase your company's customer support 
efficiency by 100%
http://www.houseoffusion.com/banners/view.cfm?bannerid=49

Message: http://www.houseoffusion.com/lists.cfm/link=i:4:216674
Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4
Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4
Donations  Support: http://www.houseoffusion.com/tiny.cfm/54


Re: More CFC Best Practice questions

2005-08-29 Thread Barney Boisvert
First, if your shared-scope components are carefully designed, chances
are good that you won't have any CFLOCKs anywhere outside your CFCs
except to protect their initialization.  Seriously.  The only place
you need to lock is where you have race conditions, and those race
conditions can only occur with the STATE (instance variables) of your
shared instances.  Some will argue that the CFC should be environment
neutral, and therefore the locking is the responsibility of the
environment, but I think that's unnecessary, as it's rare to have CFCs
that are both used in isolation as as shared-scope instances.  It's
far easier to lock inside the CFC, and more performant too.

I usually try to aim for entity components that are NEVER accessed
concurrently (so they don't need locking), and for non-entity
(service) components that are stateless.  The main exception to the
latter are caching components, because obviously the cache itself has
to be stateful, and therefore needs to have access to it locked.  And
with entity components, you can certainly share instances across
requests, just never at the same time.

And finally, keep in mind that session components need locking, unless
you can guarentee youself that multiple concurrent requests from a
single session will NEVER occur (which is pretty much
unguarenteeable).

cheers,
barneyb

On 8/29/05, Burns, John D [EMAIL PROTECTED] wrote:
 I'm getting ready to start a new app and there are some things I've
 learned from other apps that I'm going to implement into this app as far
 as CFCs go. I saw the thread concerning the THIS scope which helped to
 get some different people's takes on its use. I was wondering if anyone
 else would like to post personal or recognized best practices.  I am
 especially interested in scoping instances of components. I always have
 a hard time deciding which scopy to put instances of CFCs into for
 different purposes and which kinds of methods I should have in each.
 Sometimes, I've overloaded the application scope and end up locking my
 application to death for almost everything, but then other times, I
 think I put stuff in session that belongs in application. Any advice
 would be appreciated, as well as any other best practices that you'd
 care to share. I'm always willing to learn. Thanks.
 
 John Burns
 Certified Advanced ColdFusion MX Developer
 Wyle Laboratories, Inc. | Web Developer
 
 

-- 
Barney Boisvert
[EMAIL PROTECTED]
360.319.6145
http://www.barneyb.com/

Got Gmail? I have 50 invites.

~|
Discover CFTicket - The leading ColdFusion Help Desk and Trouble 
Ticket application

http://www.houseoffusion.com/banners/view.cfm?bannerid=48

Message: http://www.houseoffusion.com/lists.cfm/link=i:4:216672
Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4
Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4
Donations  Support: http://www.houseoffusion.com/tiny.cfm/54


Re: More CFC Best Practice questions

2005-08-29 Thread Brian Kotek
I wrote an article on CFC best practices that might be helpful:

http://www.briankotek.com/blog/index.cfm?mode=entryentry=104F4985-3048-23C1-DDF6C15FB4864387


On 8/29/05, Dave Carabetta [EMAIL PROTECTED] wrote:
 On 8/29/05, Burns, John D [EMAIL PROTECTED] wrote:
  I'm getting ready to start a new app and there are some things I've
  learned from other apps that I'm going to implement into this app as far
  as CFCs go. I saw the thread concerning the THIS scope which helped to
  get some different people's takes on its use. I was wondering if anyone
  else would like to post personal or recognized best practices.  I am
  especially interested in scoping instances of components. I always have
  a hard time deciding which scopy to put instances of CFCs into for
  different purposes and which kinds of methods I should have in each.
  Sometimes, I've overloaded the application scope and end up locking my
  application to death for almost everything, but then other times, I
  think I put stuff in session that belongs in application. Any advice
  would be appreciated, as well as any other best practices that you'd
  care to share. I'm always willing to learn. Thanks.
 
 
 Your best bet is to search the archives of this list. This topic gets
 beaten to death every month or two and you'll find a wealth of
 information in past threads that you can choose to apply or not apply
 to your development cycle. What you'll find is that best practices
 is a very subjective theme, with only a few truly necessary must-dos
 (i.e., var scoping local variables, including query names). As for
 what scope you store component instances in, how they're called, etc.,
 that's all up to you and nobody is going to chime in with a you must
 do it this way or it's incorrect answer for you. Sorry it's a bit
 gray, but that's just the reality.
 
 Regards,
 Dave.
 
 

~|
Logware (www.logware.us): a new and convenient web-based time tracking 
application. Start tracking and documenting hours spent on a project or with a 
client with Logware today. Try it for free with a 15 day trial account.
http://www.houseoffusion.com/banners/view.cfm?bannerid=67

Message: http://www.houseoffusion.com/lists.cfm/link=i:4:216677
Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4
Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4
Donations  Support: http://www.houseoffusion.com/tiny.cfm/54


RE: More CFC Best Practice questions

2005-08-29 Thread Burns, John D
Right, I understand, I was more hoping for people to post their one or
two hot button things that they try to do within CFCs. I've seen most of
the traffic concerning them, I was just curious what people couldn't
live without when it comes to CFCs and then also suggestions/rules about
shared scoping. 


John Burns
Certified Advanced ColdFusion MX Developer
Wyle Laboratories, Inc. | Web Developer
 

-Original Message-
From: Dave Carabetta [mailto:[EMAIL PROTECTED] 
Sent: Monday, August 29, 2005 1:53 PM
To: CF-Talk
Subject: Re: More CFC Best Practice questions

On 8/29/05, Burns, John D [EMAIL PROTECTED] wrote:
 I'm getting ready to start a new app and there are some things I've 
 learned from other apps that I'm going to implement into this app as 
 far as CFCs go. I saw the thread concerning the THIS scope which 
 helped to get some different people's takes on its use. I was 
 wondering if anyone else would like to post personal or recognized 
 best practices.  I am especially interested in scoping instances of 
 components. I always have a hard time deciding which scopy to put 
 instances of CFCs into for different purposes and which kinds of
methods I should have in each.
 Sometimes, I've overloaded the application scope and end up locking my

 application to death for almost everything, but then other times, I 
 think I put stuff in session that belongs in application. Any advice 
 would be appreciated, as well as any other best practices that you'd 
 care to share. I'm always willing to learn. Thanks.
 

Your best bet is to search the archives of this list. This topic gets
beaten to death every month or two and you'll find a wealth of
information in past threads that you can choose to apply or not apply to
your development cycle. What you'll find is that best practices
is a very subjective theme, with only a few truly necessary must-dos
(i.e., var scoping local variables, including query names). As for what
scope you store component instances in, how they're called, etc., that's
all up to you and nobody is going to chime in with a you must do it
this way or it's incorrect answer for you. Sorry it's a bit gray, but
that's just the reality.

Regards,
Dave.



~|
Logware (www.logware.us): a new and convenient web-based time tracking 
application. Start tracking and documenting hours spent on a project or with a 
client with Logware today. Try it for free with a 15 day trial account.
http://www.houseoffusion.com/banners/view.cfm?bannerid=67

Message: http://www.houseoffusion.com/lists.cfm/link=i:4:216678
Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4
Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4
Donations  Support: http://www.houseoffusion.com/tiny.cfm/54


cfc best practice questions

2003-01-09 Thread mynews
OK, I just upgraded to CFMX and I am trying to figure out the 
best way to handle a form. Usually, in an admin area, I have 
an action page that handles the add/update/delete for data in 
a table. This is the action page for the add update form. As 
an example I may have 3 pages: view records,edit/add records, 
action (this has all the queries and other business code).
If I want to use the CFC model will I now need 4 pages? view,add/edit/action, 
and the cfc? Will the action page still be the action for the 
forms but will use the cfc for all business code and queries?
Thanks in advance,
BJ



___
Sent by ePrompter, the premier email notification software.
Free download at http://www.ePrompter.com.

~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq
Your ad could be here. Monies from ads go to support these lists and provide more 
resources for the community. http://www.fusionauthority.com/ads.cfm

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4




cfc best practice questions

2003-01-09 Thread David Tobey
I don't know what others would say but we've found it useful to put all the queries, 
server-side form validation, and business logic in one or more cfcs. Then the action 
page just acts a controller, taking in the action that was requested and calling the 
appropriate function(s) in the cfc to perform it, passing along the parameters 
submitted in the form. This way, the cfc can be reused generically to interface with 
the database (for example, with Flash Remoting). The other pages you describe would 
also call functions from the cfc--SELECT statements to pull stuff out of the database 
for display. 

dave

---
David Tobey
Par Avance, Inc., www.paravance.com
(303) 447-0878
~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq
Structure your ColdFusion code with Fusebox. Get the official book at 
http://www.fusionauthority.com/bkinfo.cfm

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4