I’m no novice when it comes to Coldbox, but I’ve also never had the opportunity to sit and go thru the system with the author himself. That alone had me looking forward to the seminar.
The course kicked off with a nice breakfast and a goody bag loaded with training materials, a t-shirt, cheat sheets, candy and snacks, not to mention the bag itself is pretty nice.
The training manual has to be around 300+ pages, and that doesn’t include the exercises. That’s a separate booklet 100+ pages thick. Both are as rich in content as they are in size.
The lecture began with an intro to Design Patterns, Object Oriented methodology, and the vocabulary needed to comprehend the framework’s architecture. He also went over some Best Practices not specific to Coldbox.
A good lesson for those migrating from spaghetti or even well structured procedural code.
The highlight for me came when he mentioned a few things to be aware of when using ColdFusion. Years of CF and I guess a few things had slipped by me.
Did you know:
1. Variables of type string, array, number, and date all pass in and out of components by value.
But structures, queries, and all other ‘complex’ objects including CFCs get passed by reference.
May seem obvious to some, but to me, the ARRAY type seemed liked it should of been grouped with the complex types and passed by reference. Apparently, its a CF thing. Don’t know how I feel about that, your thoughts?
2. ColdFusion creates java inner classes for each method in a CFC. So on top of the classes it uses to build CFC objects, it also has to instantiate these inner classes for each method. So consider the overhead of bloating objects with simple getter and setters, is it worth it?
Definitely, got me thinking…
From there we jumped into framework itself. Luis went over how to get it installed, configured, and how to tweak your IDE (eclipse and dw snippets and dictionaries).
The focus with Coldbox has always been the developer. If you don’t know, there are lots of features that you wont find in other frameworks that make coding easier, and more fun. Luis touched on the development tools such as, the dashboard, debugger, cache monitor, and even the SideBar, to name a few.
Things started getting pretty advanced when we got into the Coldbox architecture and hierarchy. A great way to really understand the power and the functionality you have available from within the framework.
I don’t want to spoil it for those attending the seminar at CFUnited, so I wont go in to much more detail. I will say there are lots of details and knowledge to be absorbed, even for a veteran like myself.
Looking forward to Day 2’s lesson. We still have half of the training manual to go.