RE: [ACFUG Discuss] CF. Object oriented its future. General Questions.
I know I am REALLY late getting into this, but I thought I would throw in my 2 cents. Where do you want to be in the next 5 years? Still being a grunt coder, just being told what to code by project leaders? If you want to just be a gunt programmer that can charge more, are you looking to just build your resume (either by language, database, graphical skills, etc.) ?Leading teams of coders? If so, in what role do you want to lead them?Just divving up tasks (with application parameters already given to you)?Application desgn(Structure/ framework/ graphical design)of applications? What about just being an architect lead, that decides what technologies (hardware, database/ CSS/ script, etc. ) to use, consultant like? Obviously some of these terms (architect, lead, senior, team, design, etc.) will vary from company to company. Check some place like computerjobs.com to see some wariances.What about the guy that just is the liason between the project manager (either internal or external)or consultantand the developers, deciding how long projects should take and such other parameters of the project (depending on the project parameters)? Or do you want to go into more of a mangerial role and pulling away from coding? Going more into the technical consultant or a project manager role?Look ahead as to where you want to be later on, not just next month.mcg[EMAIL PROTECTED] wrote: -To: discussion@acfug.orgFrom: Charlie Arehart [EMAIL PROTECTED]Sent by: [EMAIL PROTECTED]Date: 12/28/2006 11:27PMSubject: RE: [ACFUG Discuss] CF. Object oriented its future. General Questions.Ah, fair enough. No harm. At least now it's clear to folks what you're hope was and they can decide how to respond. Thanks. /Charlie http://www.carehart.org/blog/ From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ajas Mohammed Sent: Thursday, December 28, 2006 11:02 PM To: discussion@acfug.org Subject: Re: [ACFUG Discuss] CF. Object oriented its future. General Questions. oops... sorry about that.. Only reason I asked was because i thought people might not have noticed them because we had so much discussion about CFC's also because many clients ask for design skills (template work) + CF and I just wanted to get idea what ppl think about the design. I am sorry if I sounded too pushy...I wont do it again... Apologies. Ajas. - To unsubscribe from this list, manage your profile @ http://www.acfug.org?fa=login.edituserform For more info, see http://www.acfug.org/mailinglists Archive @ http://www.mail-archive.com/discussion%40acfug.org/ List hosted by FusionLink - - To unsubscribe from this list, manage your profile @ http://www.acfug.org?fa=login.edituserform For more info, see http://www.acfug.org/mailinglists Archive @ http://www.mail-archive.com/discussion%40acfug.org/ List hosted by FusionLink -
RE: [ACFUG Discuss] CF. Object oriented its future. General Questions.
Ajas, as for your second question, I'd recommend you sign up for the CFC-Dev mailing list, which is devoted to discussions of the effective use of CFCs, with a heavy emphasis on OO use. You'll find it both a great place to ask such questions as well as to learn from others as they discuss: http://www.cfczone.org/listserv.cfm /Charlie http://www.carehart.org/blog/ _ From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ajas Mohammed Sent: Wednesday, December 27, 2006 2:22 PM To: discussion@acfug.org Subject: Re: [ACFUG Discuss] CF. Object oriented its future. General Questions. Thanks Teddy, I am frequent visitor of House of Fusion but now I have registered with them and signed up the mailing lists. Thanks for that tip. a) Anybody got chance to look at my sample work I posted earlier? b) Any inputs on how to make the most out of the OO programming or resusability by using CFC's in a web application. Right now I can only think of having queries in a funct/method and using that method. I am sure I am missing lot of other options out there where CFC's can be used for Web Application. Anyone with experience in this area wanna suggest some cool tips/tricks for reusability. Right now we have about 10 sites and every change results in change in 10 places. We dont have a single code repository. I wish if we had a CFC for queries so if anything changes, I could change that cfc and copy it over 10 places instead of making changes individually in 10 files. Thanks a lot... Ajas - To unsubscribe from this list, manage your profile @ http://www.acfug.org?fa=login.edituserform For more info, see http://www.acfug.org/mailinglists Archive @ http://www.mail-archive.com/discussion%40acfug.org/ List hosted by http://www.fusionlink.com - attachment: image002.jpg
RE: [ACFUG Discuss] CF. Object oriented its future. General Questions.
Ajas, as for repeated requests for whether people had looked over your site, perhaps the lack of response is due to the lack of any apparent CFML aspect to the site. One is JSP and the other is plain HTML. Are you looking for critique of your HTML design? That's not really something that's done here on this list (nor on most CFML lists), in my experience. If you're instead asking repeatedly in the hopes that more people will simply observe the content of the sites, I'll say as well that it's not really appropriate on this CF discussion list to try to push people (by repeated prodding, I mean) to a non-technical site. We have a separate community list that is more open to pretty much any discussion. This list is really to be limited to CFML-related topics. See the http://www.acfug.org/index.cfm?fa=mailinglists.info page to sign up for that. /Charlie http://www.carehart.org/blog/ _ From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ajas Mohammed Sent: Thursday, December 28, 2006 10:10 PM To: discussion@acfug.org Subject: Re: [ACFUG Discuss] CF. Object oriented its future. General Questions. Thanks again for that tip Charlie I have signed up with them also anyone got chance to look at some of my work I had posted earlierhow do u like it??? Thanks everyone... Ajas Mohammed. - To unsubscribe from this list, manage your profile @ http://www.acfug.org?fa=login.edituserform For more info, see http://www.acfug.org/mailinglists Archive @ http://www.mail-archive.com/discussion%40acfug.org/ List hosted by http://www.fusionlink.com - attachment: image002.jpg
Re: [ACFUG Discuss] CF. Object oriented its future. General Questions.
oops... sorry about that.. Only reason I asked was because i thought people might not have noticed them because we had so much discussion about CFC's also because many clients ask for design skills (template work) + CF and I just wanted to get idea what ppl think about the design. I am sorry if I sounded too pushy...I wont do it again... Apologies. Ajas. On 12/28/06, Charlie Arehart [EMAIL PROTECTED] wrote: Ajas, as for repeated requests for whether people had looked over your site, perhaps the lack of response is due to the lack of any apparent CFML aspect to the site. One is JSP and the other is plain HTML. Are you looking for critique of your HTML design? That's not really something that's done here on this list (nor on most CFML lists), in my experience. If you're instead asking repeatedly in the hopes that more people will simply observe the content of the sites, I'll say as well that it's not really appropriate on this CF discussion list to try to push people (by repeated prodding, I mean) to a non-technical site. We have a separate community list that is more open to pretty much any discussion. This list is really to be limited to CFML-related topics. See the http://www.acfug.org/index.cfm?fa=mailinglists.info page to sign up for that. /Charlie http://www.carehart.org/blog/ -- *From:* [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] *On Behalf Of *Ajas Mohammed *Sent:* Thursday, December 28, 2006 10:10 PM *To:* discussion@acfug.org *Subject:* Re: [ACFUG Discuss] CF. Object oriented its future. General Questions. Thanks again for that tip Charlie I have signed up with them also anyone got chance to look at some of my work I had posted earlierhow do u like it??? Thanks everyone... Ajas Mohammed. - To unsubscribe from this list, manage your profile @ http://www.acfug.org?fa=login.edituserform For more info, see http://www.acfug.org/mailinglists Archive @ http://www.mail-archive.com/discussion%40acfug.org/ List hosted by FusionLink http://www.fusionlink.com - - To unsubscribe from this list, manage your profile @ http://www.acfug.org?fa=login.edituserform For more info, see http://www.acfug.org/mailinglists Archive @ http://www.mail-archive.com/discussion%40acfug.org/ List hosted by http://www.fusionlink.com - attachment: image002.jpg
RE: [ACFUG Discuss] CF. Object oriented its future. General Questions.
Ah, fair enough. No harm. At least now it's clear to folks what you're hope was and they can decide how to respond. Thanks. /Charlie http://www.carehart.org/blog/ _ From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ajas Mohammed Sent: Thursday, December 28, 2006 11:02 PM To: discussion@acfug.org Subject: Re: [ACFUG Discuss] CF. Object oriented its future. General Questions. oops... sorry about that.. Only reason I asked was because i thought people might not have noticed them because we had so much discussion about CFC's also because many clients ask for design skills (template work) + CF and I just wanted to get idea what ppl think about the design. I am sorry if I sounded too pushy...I wont do it again... Apologies. Ajas. - To unsubscribe from this list, manage your profile @ http://www.acfug.org?fa=login.edituserform For more info, see http://www.acfug.org/mailinglists Archive @ http://www.mail-archive.com/discussion%40acfug.org/ List hosted by http://www.fusionlink.com - attachment: image002.jpg
Re: [ACFUG Discuss] CF. Object oriented its future. General Questions.
2005 CFDJ article, Getting Started Integrating CFML with Java .NET: http://coldfusion.sys-con.com/read/86127.htm There I make the case and point out other resources about CFML/Java integration (and there are many, far more complete than mine). You may note in the title that I also point out integration with .NET (and by implication C#). That's easiest with BlueDragon.NET right now but Scorpio (CF8) will also offer the ability to call .NET objects. My point with all this addresses your last question to me below, Do you think switching technologies is a good idea?). It need not be an either/or proposition (CF vs Java/C#). You can eat your cake and have it too (which is not only the original form of the phrase, but also the more logical form). image002.jpg /Charlie http://www.carehart.org/blog/ From: [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] On Behalf Of Ajas Mohammed Sent: Tuesday, December 26, 2006 12:21 PM To: discussion@acfug.org Subject: Re: [ACFUG Discuss] CF. Object oriented its future. General Questions. Hi Charlie, Thanks for the reply. It really helped a lot. In your reply you mentioned, As for learning more about OO development in Java, if you're new to that, I recommend Jacquie Barker's Beginning Java Objects. Most Java books presume you already understand OO (in my opinion) and hers was one of the first to walk you through it gently (and without requiring too much understanding of Java, either). In that regard, it can be useful even for CFML folks looking to expand their understanding. Do you think as a CF developer who plans to become Lead/Architect, learning java or Java objects might help. What I am trying to ask is, if a person spends lets say 5 years of his experience in CF, is he good enough to be an architect or does he needs to have Java experience also to add weight for him to be considered for Architect./Lead position?? My main concern is that do I need to learn C#/Java. Lets say after 5 years of experience CF, I shouldnt feel that I should have tried C#/Java instead of just sticking to CF. Best way to avoid this would be to learn something now, instead of waiting for a switch later and I know its gonna be too late if I do it after 4-5 years. Any suggestions... Do you think switching technologies is a good idea?? Anyone with answers to question 1 2 i.e. 1. My question is do you guys see potential in CF that a person can after some years of experience treated as Lead or Architect. 2.Also do we have architects here in this group based of CF experience only? Ajas. On 12/26/06, Charlie Arehart [EMAIL PROTECTED] wrote: Ajas, I'm sure others will have much more to say, but I want to quickly resolve your fears and concerns b y pointing out that yes, indeed, CFCs are the way in which CFML enables more object-like development. No, I won't call it object-oriented as some will contend with that specific term, but an affirmative answer for your last questions is a sign of how far CFML has evolved since its being labeled early on (and being still regarded by many) as just a tag-based scripting language. To your question 3, yes, by using CFCs your CFML applications can have classes and stuff like that. CFCs can be thought of as classes, with methods and properties, and even inheritance. Pretty much whatever you learn in any resource on object-based development will apply to CFML--but I will point out as well that there are indeed many folks who use CFCs and never apply them in a real OO way. Your example of using them for web services is one of them. Another is their use as effectively buckets of what would be called static methods--they don't try to persist (or rely on persistence of) any sort of state data. There's nothing wrong with that, and it's clearly a form of reuse, but it's not really on par with what you'll read/learn about regarding true OO-style programming. I'll let others point out what they think are good resources to learn and apply CFCs in a more OO way. As for learning more about OO development in Java, if you're new to that, I recommend Jacquie Barker's Beginning Java Objects. Most Java books presume you already understand OO (in my opinion) and hers was one of the first to walk you through it gently (and without requiring too much understanding of Java, either). In that regard, it can be useful even for CFML folks looking to expand their understanding. The same dilemma will apply to some resources out there that discuss using CFCs in a more OO-like way: they presume you already understand the why and focus instead on the how, or on implementation using some specific style or pattern, again presuming you understand patterns. For that, I'll recommend Shalloway's Design Patterns Explained. All this is about the evolution of a CFML developer to greater levels of software engineering appreciation. Going to your earlier points, I don't think it's
Re: [ACFUG Discuss] CF. Object oriented its future. General Questions.
and higher levels of architects write less and less code. I have enjoyed my code for the past 10 years, but eventually I will have to take the blue pill and come back to earth. Teddy On 12/26/06, Charlie Arehart [EMAIL PROTECTED] wrote: Ajas, you're trying to draw me into answering your first 2 questions, which as you note I did not in my original reply. :-) I don't want to try to get into that debate, to be honest. I don't think there are clear answers. And I think we need to have much more info about the place where you're asking if a CFML person could be an architect. I think in some places, they could be, even without OO experience. Certainly in others, they'd have to have it, and in still others, even such experience might be ignored if they also showed CF experience in the bulk of their resume. You can't win all the battles out there. I will say that it certainly wouldn't hurt for a CFML developer to learn more about OO and Java. But there are many (MANY) who still never have and who make a comfortable living. Could they do their jobs better with greater understanding of software engineering principles? Sure. Is it necessary, not in most cases. The beauty of learning Java (over C#) is that you can so closely integrate the two in CFML today. Again, this is something I've written and spoken about a lot (as have others). I'll point you to a May 2005 CFDJ article, Getting Started Integrating CFML with Java .NET: http://coldfusion.sys-con.com/read/86127.htm There I make the case and point out other resources about CFML/Java integration (and there are many, far more complete than mine). You may note in the title that I also point out integration with .NET (and by implication C#). That's easiest with BlueDragon.NET right now but Scorpio (CF8) will also offer the ability to call .NET objects. My point with all this addresses your last question to me below, Do you think switching technologies is a good idea?). It need not be an either/or proposition (CF vs Java/C#). You can eat your cake and have it too (which is not only the original form of the phrase, but also the more logical form). image002.jpg /Charlie http://www.carehart.org/blog/ From: [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] On Behalf Of Ajas Mohammed Sent: Tuesday, December 26, 2006 12:21 PM To: discussion@acfug.org Subject: Re: [ACFUG Discuss] CF. Object oriented its future. General Questions. Hi Charlie, Thanks for the reply. It really helped a lot. In your reply you mentioned, As for learning more about OO development in Java, if you're new to that, I recommend Jacquie Barker's Beginning Java Objects. Most Java books presume you already understand OO (in my opinion) and hers was one of the first to walk you through it gently (and without requiring too much understanding of Java, either). In that regard, it can be useful even for CFML folks looking to expand their understanding. Do you think as a CF developer who plans to become Lead/Architect, learning java or Java objects might help. What I am trying to ask is, if a person spends lets say 5 years of his experience in CF, is he good enough to be an architect or does he needs to have Java experience also to add weight for him to be considered for Architect./Lead position?? My main concern is that do I need to learn C#/Java. Lets say after 5 years of experience CF, I shouldnt feel that I should have tried C#/Java instead of just sticking to CF. Best way to avoid this would be to learn something now, instead of waiting for a switch later and I know its gonna be too late if I do it after 4-5 years. Any suggestions... Do you think switching technologies is a good idea?? Anyone with answers to question 1 2 i.e. 1. My question is do you guys see potential in CF that a person can after some years of experience treated as Lead or Architect. 2.Also do we have architects here in this group based of CF experience only? Ajas. On 12/26/06, Charlie Arehart [EMAIL PROTECTED] wrote: Ajas, I'm sure others will have much more to say, but I want to quickly resolve your fears and concerns b y pointing out that yes, indeed, CFCs are the way in which CFML enables more object-like development. No, I won't call it object-oriented as some will contend with that specific term, but an affirmative answer for your last questions is a sign of how far CFML has evolved since its being labeled early on (and being still regarded by many) as just a tag-based scripting language. To your question 3, yes, by using CFCs your CFML applications can have classes and stuff like that. CFCs can be thought of as classes, with methods and properties, and even inheritance. Pretty much
Re: [ACFUG Discuss] CF. Object oriented its future. General Questions.
quite different, one may even code whilst the other lives in UML world. DK On 12/27/06, Teddy Payne [EMAIL PROTECTED] wrote: I am a little late on this thread and Charlie has provided a plethora of knowledge. To be a lead at anything, it first starts out with your personal character. Can you lead well? Do people look to you? Are people confident in your ability? I studied computer science before and really all you need is to learn the theory of architecture. Let me stress the word theory here. In computer science, you learn to apply the same pricipals over and over again to languages that only differed in syntax or implementation. Can you be a lead as a CF'er? Sure. Does knowing OO help? You betcha. Do I have to be uber Java guy to be an architect? Debateable. If you want to be an integration specialist, I would recommend learning Java with CF. If you want to be a future lead, you will have to learn to detach from code eventually. Higher and higher levels of architects write less and less code. I have enjoyed my code for the past 10 years, but eventually I will have to take the blue pill and come back to earth. Teddy On 12/26/06, Charlie Arehart [EMAIL PROTECTED] wrote: Ajas, you're trying to draw me into answering your first 2 questions, which as you note I did not in my original reply. :-) I don't want to try to get into that debate, to be honest. I don't think there are clear answers. And I think we need to have much more info about the place where you're asking if a CFML person could be an architect. I think in some places, they could be, even without OO experience. Certainly in others, they'd have to have it, and in still others, even such experience might be ignored if they also showed CF experience in the bulk of their resume. You can't win all the battles out there. I will say that it certainly wouldn't hurt for a CFML developer to learn more about OO and Java. But there are many (MANY) who still never have and who make a comfortable living. Could they do their jobs better with greater understanding of software engineering principles? Sure. Is it necessary, not in most cases. The beauty of learning Java (over C#) is that you can so closely integrate the two in CFML today. Again, this is something I've written and spoken about a lot (as have others). I'll point you to a May 2005 CFDJ article, Getting Started Integrating CFML with Java .NET: http://coldfusion.sys-con.com/read/86127.htm There I make the case and point out other resources about CFML/Java integration (and there are many, far more complete than mine). You may note in the title that I also point out integration with .NET (and by implication C#). That's easiest with BlueDragon.NET right now but Scorpio (CF8) will also offer the ability to call .NET objects. My point with all this addresses your last question to me below, Do you think switching technologies is a good idea?). It need not be an either/or proposition (CF vs Java/C#). You can eat your cake and have it too (which is not only the original form of the phrase, but also the more logical form). image002.jpg /Charlie http://www.carehart.org/blog/ From: [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] On Behalf Of Ajas Mohammed Sent: Tuesday, December 26, 2006 12:21 PM To: discussion@acfug.org Subject: Re: [ACFUG Discuss] CF. Object oriented its future. General Questions. Hi Charlie, Thanks for the reply. It really helped a lot. In your reply you mentioned, As for learning more about OO development in Java, if you're new to that, I recommend Jacquie Barker's Beginning Java Objects. Most Java books presume you already understand OO (in my opinion) and hers was one of the first to walk you through it gently (and without requiring too much understanding of Java, either). In that regard, it can be useful even for CFML folks looking to expand their understanding. Do you think as a CF developer who plans to become Lead/Architect, learning java or Java objects might help. What I am trying to ask is, if a person spends lets say 5 years of his experience in CF, is he good enough to be an architect or does he needs to have Java experience also to add weight for him to be considered for Architect./Lead position?? My main concern is that do I need to learn C#/Java. Lets say after 5 years of experience CF, I shouldnt feel that I should have tried C#/Java instead of just sticking to CF. Best way to avoid this would be to learn something now, instead of waiting for a switch later and I know its gonna
RE: [ACFUG Discuss] CF. Object oriented its future. General Questions.
Ajas, I'm sure others will have much more to say, but I want to quickly resolve your fears and concerns b y pointing out that yes, indeed, CFCs are the way in which CFML enables more object-like development. No, I won't call it object-oriented as some will contend with that specific term, but an affirmative answer for your last questions is a sign of how far CFML has evolved since its being labeled early on (and being still regarded by many) as just a tag-based scripting language. To your question 3, yes, by using CFCs your CFML applications can have classes and stuff like that. CFCs can be thought of as classes, with methods and properties, and even inheritance. Pretty much whatever you learn in any resource on object-based development will apply to CFML--but I will point out as well that there are indeed many folks who use CFCs and never apply them in a real OO way. Your example of using them for web services is one of them. Another is their use as effectively buckets of what would be called static methods--they don't try to persist (or rely on persistence of) any sort of state data. There's nothing wrong with that, and it's clearly a form of reuse, but it's not really on par with what you'll read/learn about regarding true OO-style programming. I'll let others point out what they think are good resources to learn and apply CFCs in a more OO way. As for learning more about OO development in Java, if you're new to that, I recommend Jacquie Barker's Beginning Java Objects. Most Java books presume you already understand OO (in my opinion) and hers was one of the first to walk you through it gently (and without requiring too much understanding of Java, either). In that regard, it can be useful even for CFML folks looking to expand their understanding. The same dilemma will apply to some resources out there that discuss using CFCs in a more OO-like way: they presume you already understand the why and focus instead on the how, or on implementation using some specific style or pattern, again presuming you understand patterns. For that, I'll recommend Shalloway's Design Patterns Explained. All this is about the evolution of a CFML developer to greater levels of software engineering appreciation. Going to your earlier points, I don't think it's NECESSARY for a CFML developer to learn them, but it will certainly help for some work and some projects, and will over time improve all projects one works on. It's very much a mind-shift. In fact, in 2001 I wrote about why I thought it would be very challenging for some to make the transition. At the time, I was writing on the transition to J2EE, but it's really as much about the transition to OO. You may find it helpful: http://jdj.sys-con.com/read/36679.htm To your question 4, yes, CFCs can be represented as being in packages. Indeed, there is an ACCESS attribute of CFFUNCTION (the way to define methods in CFCs) which is corollary to the access modifier in Java, and it supports public, private, and package, to name a few. To your question 5, there is indeed an API tool. In CFMX you can browse a CFC (literally, just browse the CFC name as if it was a URL) and CF will present an API interface showing the properties, methods, and more. You do need to have the RDS (not Admin) password to access that, and that's been a show-stopper for many. I wrote a blog entry in 2003 showing how to disable or alter that, if appropriate for your environment: http://cfmxplus.blogspot.com/2003/02/how-to-stop-requiring-rds-password-for. html /Charlie http://www.carehart.org/blog/ _ From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ajas Mohammed Sent: Tuesday, December 26, 2006 8:28 AM To: discussion@acfug.org Subject: [ACFUG Discuss] CF. Object oriented its future. General Questions. Hi, I am a CF developer and I had discussion with one of my friends and he said if you want to be architect or lead, you need to have understanding of objects/classes like how they used in java. He said you are going no where and need to switch the technology if you want to earn good money. The reason I have asked this question is because many non-CF developers or architects think that CF just tag based and they dont give respect to CF. 1. My question is do you guys see potential in CF that a person can after some years of experience treated as Lead or Architect. 2.Also do we have architects here in this group based of CF experience only? 3. We do only web development and we havent used CFC's except for one place where we use it as webservice. How would someone compare CF OO programming with something like java maybe. Can we have CF applications have classes and stuff like that. If yes then what would be a good starting point to learn implement in that style ( i.e. reusability). 4. Can we have packages in CF? 5. Is there a documentation tool in CF like JavaDoc tool in java which creates documentation? I am so confused right now. Your suggestions
Re: [ACFUG Discuss] CF. Object oriented its future. General Questions.
Hi Charlie, Thanks for the reply. It really helped a lot. In your reply you mentioned, As for learning more about OO development in Java, if you're new to that, I recommend Jacquie Barker's Beginning Java Objects. Most Java books presume you already understand OO (in my opinion) and hers was one of the first to walk you through it gently (and without requiring too much understanding of Java, either). In that regard, it can be useful even for CFML folks looking to expand their understanding. Do you think as a CF developer who plans to become Lead/Architect, learning java or Java objects might help. What I am trying to ask is, if a person spends lets say 5 years of his experience in CF, is he good enough to be an architect or does he needs to have Java experience also to add weight for him to be considered for Architect./Lead position?? My main concern is that do I need to learn C#/Java. Lets say after 5 years of experience CF, I shouldnt feel that I should have tried C#/Java instead of just sticking to CF. Best way to avoid this would be to learn something now, instead of waiting for a switch later and I know its gonna be too late if I do it after 4-5 years. Any suggestions... Do you think switching technologies is a good idea?? Anyone with answers to question 1 2 i.e. 1. My question is do you guys see potential in CF that a person can after some years of experience treated as Lead or Architect. 2.Also do we have architects here in this group based of CF experience only? Ajas. On 12/26/06, Charlie Arehart [EMAIL PROTECTED] wrote: Ajas, I'm sure others will have much more to say, but I want to quickly resolve your fears and concerns b y pointing out that yes, indeed, CFCs are the way in which CFML enables more object-like development. No, I won't call it object-oriented as some will contend with that specific term, but an affirmative answer for your last questions is a sign of how far CFML has evolved since its being labeled early on (and being still regarded by many) as just a tag-based scripting language. To your question 3, yes, by using CFCs your CFML applications can have classes and stuff like that. CFCs can be thought of as classes, with methods and properties, and even inheritance. Pretty much whatever you learn in any resource on object-based development will apply to CFML--but I will point out as well that there are indeed many folks who use CFCs and never apply them in a real OO way. Your example of using them for web services is one of them. Another is their use as effectively buckets of what would be called static methods--they don't try to persist (or rely on persistence of) any sort of state data. There's nothing wrong with that, and it's clearly a form of reuse, but it's not really on par with what you'll read/learn about regarding true OO-style programming. I'll let others point out what they think are good resources to learn and apply CFCs in a more OO way. As for learning more about OO development in Java, if you're new to that, I recommend Jacquie Barker's Beginning Java Objects. Most Java books presume you already understand OO (in my opinion) and hers was one of the first to walk you through it gently (and without requiring too much understanding of Java, either). In that regard, it can be useful even for CFML folks looking to expand their understanding. The same dilemma will apply to some resources out there that discuss using CFCs in a more OO-like way: they presume you already understand the why and focus instead on the how, or on implementation using some specific style or pattern, again presuming you understand patterns. For that, I'll recommend Shalloway's Design Patterns Explained. All this is about the evolution of a CFML developer to greater levels of software engineering appreciation. Going to your earlier points, I don't think it's NECESSARY for a CFML developer to learn them, but it will certainly help for some work and some projects, and will over time improve all projects one works on. It's very much a mind-shift. In fact, in 2001 I wrote about why I thought it would be very challenging for some to make the transition. At the time, I was writing on the transition to J2EE, but it's really as much about the transition to OO. You may find it helpful: http://jdj.sys-con.com/read/36679.htm To your question 4, yes, CFCs can be represented as being in packages. Indeed, there is an ACCESS attribute of CFFUNCTION (the way to define methods in CFCs) which is corollary to the access modifier in Java, and it supports public, private, and package, to name a few. To your question 5, there is indeed an API tool. In CFMX you can browse a CFC (literally, just browse the CFC name as if it was a URL) and CF will present an API interface showing the properties, methods, and more. You do need to have the RDS (not Admin) password to access that, and that's been a show-stopper for many. I wrote a blog entry in 2003 showing how to disable or alter
RE: [ACFUG Discuss] CF. Object oriented its future. General Questions.
Ajas, you're trying to draw me into answering your first 2 questions, which as you note I did not in my original reply. :-) I don't want to try to get into that debate, to be honest. I don't think there are clear answers. And I think we need to have much more info about the place where you're asking if a CFML person could be an architect. I think in some places, they could be, even without OO experience. Certainly in others, they'd have to have it, and in still others, even such experience might be ignored if they also showed CF experience in the bulk of their resume. You can't win all the battles out there. I will say that it certainly wouldn't hurt for a CFML developer to learn more about OO and Java. But there are many (MANY) who still never have and who make a comfortable living. Could they do their jobs better with greater understanding of software engineering principles? Sure. Is it necessary, not in most cases. The beauty of learning Java (over C#) is that you can so closely integrate the two in CFML today. Again, this is something I've written and spoken about a lot (as have others). I'll point you to a May 2005 CFDJ article, Getting Started Integrating CFML with Java .NET: http://coldfusion.sys-con.com/read/86127.htm There I make the case and point out other resources about CFML/Java integration (and there are many, far more complete than mine). You may note in the title that I also point out integration with .NET (and by implication C#). That's easiest with BlueDragon.NET right now but Scorpio (CF8) will also offer the ability to call .NET objects. My point with all this addresses your last question to me below, Do you think switching technologies is a good idea?). It need not be an either/or proposition (CF vs Java/C#). You can eat your cake and have it too (which is not only the original form of the phrase, but also the more logical form). /Charlie http://www.carehart.org/blog/ _ From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ajas Mohammed Sent: Tuesday, December 26, 2006 12:21 PM To: discussion@acfug.org Subject: Re: [ACFUG Discuss] CF. Object oriented its future. General Questions. Hi Charlie, Thanks for the reply. It really helped a lot. In your reply you mentioned, As for learning more about OO development in Java, if you're new to that, I recommend Jacquie Barker's Beginning Java Objects. Most Java books presume you already understand OO (in my opinion) and hers was one of the first to walk you through it gently (and without requiring too much understanding of Java, either). In that regard, it can be useful even for CFML folks looking to expand their understanding. Do you think as a CF developer who plans to become Lead/Architect, learning java or Java objects might help. What I am trying to ask is, if a person spends lets say 5 years of his experience in CF, is he good enough to be an architect or does he needs to have Java experience also to add weight for him to be considered for Architect./Lead position?? My main concern is that do I need to learn C#/Java. Lets say after 5 years of experience CF, I shouldnt feel that I should have tried C#/Java instead of just sticking to CF. Best way to avoid this would be to learn something now, instead of waiting for a switch later and I know its gonna be too late if I do it after 4-5 years. Any suggestions... Do you think switching technologies is a good idea?? Anyone with answers to question 1 2 i.e. 1. My question is do you guys see potential in CF that a person can after some years of experience treated as Lead or Architect. 2.Also do we have architects here in this group based of CF experience only? Ajas. On 12/26/06, Charlie Arehart mailto:[EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Ajas, I'm sure others will have much more to say, but I want to quickly resolve your fears and concerns b y pointing out that yes, indeed, CFCs are the way in which CFML enables more object-like development. No, I won't call it object-oriented as some will contend with that specific term, but an affirmative answer for your last questions is a sign of how far CFML has evolved since its being labeled early on (and being still regarded by many) as just a tag-based scripting language. To your question 3, yes, by using CFCs your CFML applications can have classes and stuff like that. CFCs can be thought of as classes, with methods and properties, and even inheritance. Pretty much whatever you learn in any resource on object-based development will apply to CFML--but I will point out as well that there are indeed many folks who use CFCs and never apply them in a real OO way. Your example of using them for web services is one of them. Another is their use as effectively buckets of what would be called static methods--they don't try to persist (or rely on persistence of) any sort of state data. There's nothing wrong with that, and it's clearly a form of reuse, but it's not really