Q. In OOP do objects HAVE to have cascading relationship ie.
Mammal --> cat --> collar --> leather --> cow Scott. "gary menzel" <[EMAIL PROTECTED]> wrote in message news:22107@cfaussie... Hello Scott, You are now starting to float around the differences in philosophy of OOP design. Using the "HAS A" relationship you get much greater flexibility at runtime. For example: You may have a generic CONNECTION class that supports coms protocols (like IRC, TELNET, HTTP, etc.) So in the above example you could have the following: CONNECTION has a PROTOCOL This allows the PROTOCOL to be changed at runtime without having to destroy the CONNECTION object. You can create a single instance of each PROTOCOL you want to use and re-use it by embedding it into each CONNECTION object. The CONNECTION object then simply calls methods in the PROTOCOL object passing itself as the CONNECTION object. In your first example, you are using the HAS A - which just means you can then call methods in PERSON that know which CART and LOGGING to use. You could then do everything to PERSON through PERSON methods. The alternative does not fall into an OOP model at all. The objects exist by themselves and the only relationship between them is whatever you end up making in the main portion of your code. I personally like the first version as it is more OOP oriented. Having said all of that, there are so many other things that make Cold Fusion NOT an object-oriented language that there may be little advantage to be gained because of the ways the OOP model can be violated in CF. It would really depend on the rest of the design of your system and what you want to be able to do at runtime. Gary Menzel IT Operations Brisbane -+- ABN AMRO Morgans Limited Level 29, 123 Eagle Street BRISBANE QLD 4000 PH: 07 333 44 828 FX: 07 3834 0828 [EMAIL PROTECTED] wrote on 01/21/2003 02:42:35 PM: > Heyas, > > I am using a CFC process type model, in that i have a parent Object, which i > call person. Beneath it i have relevant objects connected to the person > object that allow me to carry out different routines aswell as track > different variables throughout the 'person' interaction / movements of a > site. > > My question is, is it unhealthy for the application and good ol fashion OOP > principals to attach objects to the person object (this being the parent) or > is it better to simply create instances of that object that do not bolt onto > the parent object... eg: > > --- Bolted on style ---- > <cfscript> > // Define the Objects Instance > > person = createObject("component","comp.qh.customer"); > person.shopCart = createObject("component","comp.utils.shopcart"); > person.logging = createObject("component","comp.qh.logging"); > </cfscript> > > vs > > <cfscript> > // Define the Objects Instance > person = createObject("component","comp.qh.customer"); > shopCart = createObject("component","comp.utils.shopcart"); > logging = createObject("component","comp.qh.logging"); > </cfscript> > > -- > Freelance Application Developer / Designer > -- > ph: 07 3288 6702 > mob: 04040 32812 > -- > url: http://www.spidaweb.com > > > > > --- > You are currently subscribed to cfaussie as: [EMAIL PROTECTED] > To unsubscribe send a blank email to [EMAIL PROTECTED] > > MX Downunder AsiaPac DevCon - http://mxdu.com/ --- You are currently subscribed to cfaussie as: [email protected] To unsubscribe send a blank email to [EMAIL PROTECTED] MX Downunder AsiaPac DevCon - http://mxdu.com/
