Ok, let's talk about CFSQLTool any why you disagree.
First of all, CFSQLTool is a set of wizards that generate SQL code.
Only one wizard generate a CFC for dynamic queries that use this
scope variables. Other wizards deal with stored procedure generation
and CFC for stored procedures. Mostly CFSQLTool is a design tool not
only a code generation tool. For example it built a CFC for all the
system stored procedures. The main design interface is a speadsheet
of checkboxes. This design interface allows a CRUD designer to build
multiple functions at the same time.
1. Yes, I disagree with the necessity to use data hiding for every
purpose. The fact that I do not subscribe to data hiding as being OO
critical is something others in OO think as well. I do not think data
hiding is bad, it has a place. Some of you choose to use it, find.
But, not using it not bad OO either. Data hiding for everything is
the red herring of OO.
2. About the $ sign. The problem with CFCs is not being able to
determine variable names from function names. The $ is simply a
semaphore meaning variable names. If you know any computer history,
the $ is one of a few characters often treated a alpha-numeric. Your
objection may be because you dislike Basic. Some programmers use the
_ underscore to prefix label private variables. I suppose because it
is a private variable the _ is more acceptable than the $. The
objection is an emotional bias, not a compelling computer science argument.
3. Take a look at a CFC. First of all it is ColdFusion, it is not
Java, it is not C++, is not C#. It is ColdFusion. This forum is about
CFC. and writing good CFCs. The code generated by CFSQLTool is
excellent ColdFusion. The code is all open source, so if you want
add other features, like data hiding. Go ahead. Some may disagree
with the construction of the code, fine. But to say CFSQLTool does
not follow OO best practices, and so don't use it, is childish
prattle from people who should know better.
4. Invoking a CFC is conceptually the same as a linked library. The
cfinvoker or createobject is another name for a dynamic linker. Don't
get confused on this point. Linking is not OO design or programming.
While the linker itself may use some OO techniques, it is still just
a linker. One feature of ColdFusion is how well the linking works.
This scope variables are a benefit of CFCs not a curse. With
CFSQTool wizard for dynamic SQL CFUD function, I use the feature when
building a data access layer. Within each CFC that contains the CRUD
functions for a table, the table's column names are reversed
engineered to this scope. That means the memory space to the column
names variables happen at link init time. No extra get/set functions
are necessary. It is there ready for use. It provides direct access
which works great at the data access layer.
5. CFSQLTool itself is a technical demonstration of many of the
features of SQL with ColdFusion. Consider it a proof of how well this
scope variables work with CRUD for data access.
Ok I don't mind constructive arguments for points you disagree. But
don't dismiss someone's work or contribution because you don't like
the results. I have never said how bad a design Mach was because I
disagree with the use of XML as poor excuse for something that should
have been in a database.
Joseph
-----------------------------------------------------------------------
http://www.switch-box.org/CFSQLTool/Download/
Switch_box MediaFirm, Inc.
www.Switch-box.org Loveland, CO USA
----------------------------------------------------------
You are subscribed to cfcdev. To unsubscribe, send an email to
[email protected] with the words 'unsubscribe cfcdev' as the subject of the
email.
CFCDev is run by CFCZone (www.cfczone.org) and supported by CFXHosting
(www.cfxhosting.com).
CFCDev is supported by New Atlanta, makers of BlueDragon
http://www.newatlanta.com/products/bluedragon/index.cfm
An archive of the CFCDev list is available at
www.mail-archive.com/[email protected]