I was looking for a form builder that would read a database and build my forms. AKA scaffolding like RoR does. I have a home brewed one but it it is like 5 years old and is really primitive. Then I ran into this http://www.objectbreeze.com/ and thought "mutherfarker... the guy beat me at my own game...."
See... I just wrote a function that would do all my crud functions with one line of code... But it relied on code generated by the Illudium PU-36 Code Generator generator http://code.google.com/p/cfcgenerator .
I thought I was so cool.... such a bad ass. I worked really hard to get my head around beans, gateways and DAO's. Not easy stuff for the n00b.
But this guy. He just wrote a bunch of classes that does all your database operations on the fly. It is not like other ORM's or code generators that reads the database and generates your crud objects/code like RoR, Hibernate (Java) or Transfer ORM (CF). This thing does it on the fly. So if you changed your database structure it doesn't matter one bit. You don't have to regenerate your queries or your crud/database objects... or anything. Hundreds if not thousands of lines of code per application... GONE!
This is so bad ass. All you have to do is load up a data structure and send it to an object.
<cfset vars.employee = vars.oB.objectCreate("Employee") />
<!--- load the form data into the object --->
<cfset vars.employee.setProperty("employeeID", vars.employeeID) />
<cfset vars.employee.setProperty("fName", vars.fName) />
<cfset vars.employee.setProperty("lName", vars.lName) />
<cfset vars.employee.setProperty("email", vars.email) />
<!--- commit the employee object --->
<cfset vars.employee.commit() />
That is it! DONE DEAL! This is going to save me SO much time....
Even if it can just save me from five "Click and Saves" for each table with cfcgenerator or regenerating my crud functions with a ORM framework everytime I make a change to my database I will be better off. Especially when you have a database with 50 or 100 tables, this adds up. For my latest site, generating my crud objects with cfcgenerator would take at least 20 min of mindless "click, wait, click, wait, click enter click enter click enter click enter click enter" for each table.
And I would have to regenerate/change at LEAST 6 files every time I made a change to my database.
Work smart. AND hard.