Why Model with UML?
Posted by Luis Majano
Jun 18, 2007 00:00:00 UTC
As you all know by know, ColdFusion is an excellent OO platform for web development and as our systems grew in complexity and maintainability we need to plan REALLY WELL!! The best way we can is UML, the Unified Modeling Language. The purpose of the Unified Modeling Language is to provide a language-independent and platform independent modeling notation. UML tools are as versatile as the UML is foundational.
I am so used to modeling in UML now that it is a REQUIREMENT for any project, no matter how small or how big. In that sense, some of you may be beginning to see the benefits of object modeling and may wonder how in the world to start. Well, I found a great article in the NetBeans website that touches on why to use UML and provides some great samples. Although it is directed to the Java developer, I believe a ColdFusion developer can gain some benefit from it.
Tags: ColdFusion, Java, Tools
I'm glad to see that others in the CF community are beginning to utilize UML in their SDLC. At my job we actually work very hard to incorporate UML into our SDLC so that we have models which grow for applications as they are enhanced. Additionally through RUP disciplines and tools like the Rational tool suite, we find we are now more productive than we have ever been. Using UML we now find ourselves being able to communicate with great ease. There is a lot of upfront work involved in incorporating a design phase into your SDLC, but with great modeling and code generation tools, the trade-off definitely pays off. CF folks should check out Brian Kotek's XMI to CFC Generator (http://cfcstub.riaforge.org/), it's definitely one of the greatest stepping stones to getting started.
First of all, Coldfusion isn't an object oriented language. It has object oriented 'features', like CFC's, but it is not a fully object oriented language. You should not say that it is, when not even Adobe claims this, it makes readers lend less credence to what you say. CF is not an object-oriented language, just one that has some oo features.
Thanks Luis and Brian for pointing out the UML importance
@CF_not_OO, I think you get the wrong idea from luis post. without saying any compelling reasons that CF is not OO platform then what It could be.
C++ is an OO but still support procedural coding.
What things should be in a OO level language....?
It all depends on what one defines as the definition of an OOP language. The fact that CF came from a procedural setup and STILL supports this method of coding makes OOP coders raise their eyebrows when looking at CF. Writing spaghetti code that actually works is, unfortunatly, still possible with CF.
On the other hand, creating Java code from a procedural point of view is also still possible.
All in all it is a pointless discussion.
CF might not be an entirely OO language, but it has enought OO principles on it to make it an excellent OO platform for web development. Anyways, this post is to help readers understand the importance of UML modeling and introduce them to the concepts.
If you want a CF is not OO discussion, then please do it on your own blog or space.