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] > > > > > > > > > > --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
