Andrew,

All i can say is that i can totally understand you ... and for the most part, the only
thing that has really helped me was to dive in and try to build something of medium
complexity using OO style CFC's. And i started with just a few CFC's and tried to get
them in place and working and then built out from there, rather than trying to grasp
how the whole object model would work in one go. Sure, i'm having to rework things as
my understanding grows, but it hasn't been that bad.

But there's a lot to absorb on the way. And I still haven't gone very deep into the
MachII framework. I figured the best approach was to parcel it up into smaller
digestible bits and take one at a time. I started with CFC's, because that seemed like
it would give me a solid foundation to work up from.

One of my turning points was reading the comments that were posted in reaction to an
article that Sean pointed out on his blog in September.

http://www.javaworld.com/javaworld/jw-08-2003/jw-0801-toolbox.html

The article makes a lot of sense, and so does the follow-up article on getters and
setters. You would *think* that Java developers would have embraced these concepts
with their mother's milk. Not so! It was encouraging to me because it blew apart my
projection on "Java Developers". So much for the "true OOP experience" ... the
comments gave the distinct impression that most Java developers don't get this stuff
either, or would rather throw a quick hack together than take the time to work out the
model properly.

Another little turning point was Sean's blog from the other day ... Design Patterns in
ColdFusion.

Another is that i'm beginning to see that inheritance is "nearly useless" in CF -
well, that's a broad statement, but for the most part it's kinda true, because all
that is inherited is the methods. The instance data isn't inherited, because it's only
class inheritance, not object inheritance. So if you need the instance data in the
subtypes, and you probably will, you still need to pass it down to the subtype using
... you got it, composition.

Hence, the factory pattern and the DAO / memento pattern are probably just ways of
using composition to create other objects and access your stored data. Compostion, in
ColdFusion at least, seems to boil down to passing an instance of an object into an
object, OR creating an object within another object. At least that's what i've figured
out so far. That and that inheritance is nearly useless  ... someone please correct me
if i'm wrong. ;-)

So i *think* all us newbies really need is a good article - "Implementing Compostion
with ColdFusion CFC's" outlining all the different ways of doing it (The Kama Sutra -
Composition in ColdFusion) and suggesting scenarios appropriate to one approach or the
other, and from there, starting to suggest patterns. Trying to "get it" from the top
down, from the concept of the pattern to it's implementation in CF, is going to be
very difficult if you're new to this. I found it much easier, once i got there, to
start from the bottom, the implementation of composition, and move up toward patterns
from there. A few of them are beginning to make sense to me in a very practical way
now.

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Behalf Of Andrew Scott
Sent: Monday, December 08, 2003 7:04 AM
To: [EMAIL PROTECTED]
Subject: [CFCDev] Difficulty in getting the light bulb to turn on...


Hello all,

I'm a newbie to the list, although I've been reading the digest for some
time now.

With that said, I'm beginning to delve into Mach-II and the more detailed
design patterns for CFC and application development and am having a great
deal of difficulty grasping the concepts. This is in part because a lot of
terminology is involved that I'm unfamiliar with (Factory, DAO, etc.). Aside
from this list and Sean Corfield's Mach-II development guide, does anyone
have other recommendations of information sources?

While I realize changes my development architecture to this style will be a
great deal more flexible and powerful, it's such a change in mindset that
I'm finding things frustrating. Couple that with a lack of true OOP
experience (I'm an English Lit major that discovered he loved coding) and I
feel like I'm running in circles.

Thanks in advance for any help given.

Andrew

----------------------------------------------------------
You are subscribed to cfcdev. To unsubscribe, send an email
to [EMAIL PROTECTED] with the words 'unsubscribe cfcdev'
in the message of the email.

CFCDev is run by CFCZone (www.cfczone.org) and supported
by Mindtool, Corporation (www.mindtool.com).

An archive of the CFCDev list is available at www.mail-archive.com/[EMAIL PROTECTED]


----------------------------------------------------------
You are subscribed to cfcdev. To unsubscribe, send an email
to [EMAIL PROTECTED] with the words 'unsubscribe cfcdev' 
in the message of the email.

CFCDev is run by CFCZone (www.cfczone.org) and supported
by Mindtool, Corporation (www.mindtool.com).

An archive of the CFCDev list is available at www.mail-archive.com/[EMAIL PROTECTED]

Reply via email to