he should at least get some swag... a hat or t-shirt or something.

On Wed, Mar 26, 2008 at 10:51 PM, Mark Mandel <[EMAIL PROTECTED]> wrote:
>
>  Appointed Nando the possibly-official Transfer ambassador of goodwill :oD
>
>  Mark
>
>
>
>  On Thu, Mar 27, 2008 at 12:01 PM, Nando <[EMAIL PROTECTED]> wrote:
>  > I'm not sure who has sample apps, but the first places i'd look would be
>  > http://corfield.org and at Brian Kotek's site. Transfer has a google groups
>  > mailing list. You might also try to work up a simple sample site using
>  > ModelGlue. There used to be a great resource called Quick Start that walks
>  > you through it.
>  >
>  > Full-on object orientation solves problems you most likely don't have. You
>  > can dig into the pattern literature and eventually find that out for
>  > yourself like I did, and then just settle into using the OO frameworks, or
>  > simply use the frameworks from the very beginning. Transfer basically
>  > creates your business objects, DAOs and provides basic gateway services for
>  > you - saving you from writing a lot of code. If you want, write those
>  > objects once with a single simple table to get it out of your system and
>  > then use Transfer from then on.
>  >
>  > Coldspring creates object instances for you, particularly the persistent
>  > ones in application scope, and wires them together. You can try and do that
>  > on your own to get it out of your system, create a Factory whose job it is
>  > to CreateObjects ... then sit down and try and work out how to get 
> PersonDAO
>  > into Person ... no, let's see ... ummm PersonService should have an 
> instance
>  > of PersonDAO ... no ... ummm, maybe the Factory has instances of all
>  > services and creates them on application start ... wait, how should I do
>  > this. Should I pass an instance of the Factory into each of the services so
>  > it can create a DAO in them? or should the Factory create the DAO and pass
>  > it into PersonService when it creates PersonService ... what's better? I
>  > don't know!
>  >
>  > Think about that in circle for about 2 or 3 hours. Or if you want, start
>  > asking everybody on the lists how to do it "properly" so you get a variety
>  > of viewpoints  ... and then drop it and just use ColdSpring and Transfer,
>  > cuz that's where you'll most likely wind up anyway if you spend 6 - 8 
> months
>  > trying to really get OO and develop your own architecture.
>  >
>  > I think it's important to have a simple overview so you understand the
>  > basics of objects and functions and composition (one object functioning
>  > inside another) and the rest of the basics like encapsulation, etc - but I
>  > would focus on the frameworks if your goal is to be productive, 
> particularly
>  > Transfer.
>  >
>  > ;-) Nando
>  >
>  >
>  >
>  >
>  > On Wed, Mar 26, 2008 at 11:11 PM, Stephen Judd <[EMAIL PROTECTED]>
>  > wrote:
>  > > Alan:   I like the sound of your approach.  Right now, I created manager
>  > cfcs (service) in the application scope for the calendar and event objects,
>  > and also have gateways, daos, and beans.  I think I'll need to tackle
>  > Coldspring, as I can see things getting messy with dependencies, and I
>  > assume my service cfcs shouldn't be calling another service in the
>  > application scope, especially if this may end up Flexified someday.
>  > >
>  > > Nando:  I've been using Fusebox for some time, this is my first attempt 
> at
>  > a fully OO version.  Do you have any good pointers for integrating
>  > Coldspring and Fusebox....I've found some info, but no good sample apps or
>  > tutorials?
>  > >
>  > > All:  Thanks for the words of advice.  I started out with Fusebox quite a
>  > while ago, so figured I'd use it in an OO way so there'd be one less thing
>  > to learn (though I did consider MG and Mach-ii).  I'm trying to do this
>  > first one without ORM or code generators, so I have a better feel for 
> what's
>  > going on.  I think I'll have to pick up Coldspring, though.
>  > >
>  > > Steve
>  > >
>  > >
>  > >
>  > >
>  > >
>  > > On Wed, Mar 26, 2008 at 5:48 PM, Adam Haskell <[EMAIL PROTECTED]> wrote:
>  > >
>  > > > Wise words Nando. Just this morning I was contemplating "porting" Head
>  > First OOA&D to ColdFusion. By porting I mean taking examples and exercises
>  > and putting them into CF and augmenting chapters and explanations to fit
>  > ColdFusion better.  I thought it would be interesting to see what came out.
>  > I have a theory that I would have a hard time get some OO design concepts
>  > across accurately and other parts I would completely remove.
>  > > >
>  > > > I think learning basic OO Analysis concepts prior to picking up an OO
>  > centric framework is helpful though. I'm not saying take the deep dive but
>  > maybe get the basics down before diving into the framework. Certainly in
>  > light of the initial question in this thread I think a framework would be
>  > helpful.
>  > > >
>  > > > Adam Haskell
>  > > >
>  > > >
>  > > >
>  > > >
>  > > > On Wed, Mar 26, 2008 at 4:44 PM, Nando <[EMAIL PROTECTED]> wrote:
>  > > >
>  > > >
>  > > >
>  > > >
>  > > > > Transfer makes it very easy to write OO applications. The time you
>  > spend learning it is very well invested in my opinion.
>  > > > >
>  > > > > It's also important to realize from the very beginning if you have no
>  > OO experience that ColdFusion is a unique environment because it is loosely
>  > typed and because of the stateless nature of HTML based web applications.
>  > Most books you will read on OO simply don't apply very well to ColdFusion 
> at
>  > all - and that's a significant part of the confusion right there. I'm not
>  > sure if this is a correct statement, but if I had to do it again, I would
>  > focus on learning Coldspring, Transfer and ModelGlue or Fusebox or Mach II.
>  > I wouldn't make "learning OO" primary, but leave it secondary as you gain
>  > experience, following a few sample applications. I think you'll progress a
>  > lot faster that way.
>  > > > >
>  > > > >
>  > > > >
>  > > > > On Wed, Mar 26, 2008 at 6:43 PM, Adam Haskell <[EMAIL PROTECTED]>
>  > wrote:
>  > > > >
>  > > > > > I don't think I can give you an answer that is right you have to
>  > make that decision. What I do with my developers working on these types of
>  > design decisions is give them some questions to ask themselves in hope that
>  > it will get them to an answer. At the end of the day, especially when you
>  > start, you will regret your decision for one reason or another so you want
>  > to mitigate as much risk of making the worst decision by asking some
>  > questions... Remember you must answer these I am not saying yes or no to 
> any
>  > of them.
>  > > > > >
>  > > > > >
>  > > > > > >Have the event object just query the database and populate the
>  > array itself.
>  > > > > >
>  > > > > > Is your event object becoming too smart at this point? Should it
>  > know where calendars live? Where does the rest of your persistence
>  > interaction live? How will you write a test case to test your object's
>  > behavior without relying on a database?
>  > > > > >
>  > > > > >
>  > > > > > >Have the event object ask the calendarManager for the array.
>  > > > > >
>  > > > > > How will this impact your coupling? Is this impact acceptable? Is
>  > there an alternative to this approach that could impact it differently? How
>  > will you write a test case to test your object's behavior without relying 
> on
>  > a database?
>  > > > > >
>  > > > > >
>  > > > > > >Pass the array into the constructor when creating the event 
> object.
>  > > > > >
>  > > > > > How big is this array? Will all of these objects be used or will 
> the
>  > creation be wasted? Are there alternative constructors? Can my object exist
>  > and work without this array? How will you write a test case to test your
>  > object without relying on a database?
>  > > > > >
>  > > > > > The only one I have a clear direction for is the last question "Can
>  > my object exist and work without this array?" If the answer to that is no
>  > then I would strongly recommend going this direction. From the sounds of it
>  > that is not the case. Note I have a repeat question in all of them, "How
>  > will you write a test case to test your object's behavior without relying 
> on
>  > a database?" Part of the benefit of TDD, objects that are hard to test tend
>  > to be objects that violate design principles. Easy testing objects tend to
>  > be good citizens.
>  > > > > >
>  > > > > > Does anyone else have any good architecture questions Steve can ask
>  > himself to help him make the decision?
>  > > > > >
>  > > > > > Adam Haskell
>  > > > > >
>  > > > > >
>  > > > > >
>  > > > > >
>  > > > > >
>  > > > > >
>  > > > > >
>  > > > > > On Wed, Mar 26, 2008 at 10:58 AM, Stephen Judd
>  > <[EMAIL PROTECTED]> wrote:
>  > > > > >
>  > > > > > > I'm taking my first plunge into a fully OO application and have
>  > what I think is a simple question, though I haven't found the answer 
> through
>  > searching:
>  > > > > > >
>  > > > > > > I'm developing an events calendar.  An event can be on more than
>  > one calendar, so when I display an individual event, I want to also display
>  > which calendars it's on.
>  > > > > > >
>  > > > > > > So, when I construct my event object (I know, confusing name)
>  > what's the best way to grab an array of the calendars it occurs on?  I'm
>  > thinking the array could be a property of the event, but I'm not sure that
>  > my event should be asking the calendarManager for the array directly.
>  > > > > > >
>  > > > > > > Options I've contemplated:
>  > > > > > >
>  > > > > > > Have the event object just query the database and populate the
>  > array itself.
>  > > > > > >
>  > > > > > > Have the event object ask the calendarManager for the array.
>  > > > > > >
>  > > > > > > Pass the array into the constructor when creating the event
>  > object.
>  > > > > > >
>  > > > > > >
>  > > > > > > Any thoughts?  is this where I need to start using and learning
>  > ColdSpring?
>  > > > > > >
>  > > > > > > Thanks, Steve
>  > > > > > >
>  > > > > > >
>  > > > > >
>  > > > > >
>  > > > > >
>  > > > > >
>  > > > >
>  > > > >
>  > > > >
>  > > > > --
>  > > > >
>  > > > > Nando M. Breiter
>  > > > > The CarbonZero Project
>  > > > > CP 234
>  > > > > 6934 Bioggio
>  > > > > Switzerland
>  > > > > +41 76 303 4477
>  > > > > [EMAIL PROTECTED]
>  > > > >
>  > > > >
>  > > > >
>  > > > >
>  > > > >
>  > > >
>  > > >
>  > > >
>  > > >
>  > > >
>  > > >
>  > > >
>  > >
>  > >
>  > >
>  > >
>  >
>  >
>  >
>  > --
>  >
>  > Nando M. Breiter
>  > The CarbonZero Project
>  > CP 234
>  > 6934 Bioggio
>  > Switzerland
>  > +41 76 303 4477
>  > [EMAIL PROTECTED]
>  >  >
>  >
>
>
>
>  --
>  E: [EMAIL PROTECTED]
>  W: www.compoundtheory.com
>
>
>
>  >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"CFCDev" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/cfcdev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to