Beyond what's already been said, I would say that CFC's are also a
reasonable way to encapsulate GUI functionality that's not already
built in to HTML like tabsets, related select boxes, etc... There are
of course custom tags that do the same thing, but imo don't have the
same flexibility. The onTap framework also includes a good deal of
this sort of thing, although they're not actually using CFC's, just
consistently formatted structures and a slew of functions in 3
separate libraries. I obviously don't think CFC's are absolutely
necessary for a good implementation of these sorts of things -- the
libraries were originally designed for compatibility with CF5 although
more recent versions include an XML syntax which makes them easier to
grasp for programmers who are accustomed to templated display, and
obviously since it uses XML extensively this requires CFMX to drive
it.

The framework includes a fair amount of extra CFC features, most
notably pathing and dynamic-inheritance features which make it
possible to set a single variable within the application and have
_all_ CFC's in the application use the specified variable as the root
path for their discovery (and all inheritance then also uses these
paths, which is not natively available with CF), which helps to
resolve issues related to CFC's having been all written to work under
a specific directory, as was the case with early versions of Mach-II
where initially the framework had to be directly under the web root or
it had to have a "mach-ii" mapping specifically in order to function,
preventing multiple instances of the framework on a single CF Server
instance. Iirc they've changed this now, although I can't speak to the
method.

In general I think the display layer in applications gets a bad rap.
Many of the programmers I've met seem to consider it like a
second-class citizen or a "red-headed step-child" as the saying goes.
They abhore the idea of working on anything that deals with the
display for more than a moment because I guess that smacks of actually
caring what users think and many of us have a strange notion that
users are stupid people who should be seen and not heard. But I
digress... I think display is at _least_ as important as the model of
an application because it's all the client ever sees in most cases and
in general our most effective tool for communciating with our clients,
for dazzling them and for impressing on them the value of our work,
which ultimately is what helps us get paid and more importantly get
repeat business that pays. To that end, if a component is useful for
encapsulating and reusing business-logic, then I would say that a
component might be equally useful for encapsulating and reusing
display-logic.

YMMV

This article might give you some ideas about how you might want to use
CFC's for encapsulating display:

http://www.sys-con.com/story/?storyid=48229&DE=1

and for those who haven't seen it, here's a recent introductory
presentation to the onTap framework:

http://www.fusiontap.com/demo/powerontap.htm

Not it's permanent home -- I'm accumulating feedback to improve the
presentation and will be placing it in the articles section of the
framework site once I've tidied it up some. :)


s. isaac dealey   954.522.6080
new epoch : isn't it time for a change?

add features without fixtures with
the onTap open source framework

http://macromedia.breezecentral.com/p49777853/
http://www.sys-con.com/story/?storyid=48229&DE=1
http://www.sys-con.com/story/?storyid=44477&DE=1
http://www.sys-con.com/story/?storyid=45569&DE=1
http://www.sys-con.com/story/?storyid=48229&DE=1
http://www.fusiontap.com



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Logware (www.logware.us): a new and convenient web-based time tracking 
application. Start tracking and documenting hours spent on a project or with a 
client with Logware today. Try it for free with a 15 day trial account.
http://www.houseoffusion.com/banners/view.cfm?bannerid=67

Message: http://www.houseoffusion.com/lists.cfm/link=i:4:197366
Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4
Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4
Donations & Support: http://www.houseoffusion.com/tiny.cfm/54

Reply via email to