Is there any particular reason Reactor groups all generated CFCs of
the same type in the same directory? There's a Record directory, a
Gateway directory, etc.

Wouldn't it make more sense group related objects in the same
directory? For example, UserRecord, UserGateway, UserDAO, etc. would
all go in the User directory.

I can't think of a reason why I would need to change all or most of my
XXXXXXRecord.cfc files at one time. But when I change FooRecord.cfc, I
often need to change to FooDAO.cfc  or FooGateway.cfc as well. Jumping
around two or three directories and weeding through dozens of
unrelated files is a pain.

Also, I haven't run into this problem yet, but I can imagine a
situation where an application is deployed to multiple environments.
Some of the tables the app uses may belong to the app itself, where as
some may be part of the environment in which they're deployed. As such
each site may have its own local versions of MembersDAO,
MembersGateway, etc.

It would be nice to have the local, customized files in a directory
apart from the rest of the application.

On the same note, why are database-vendor-specific files lumped
together with the generic files? An application may be built to run on
MSSQL, MySQL, and Oracle. If I want to use the application with MySQL,
why should I have to wade through MSSQL and Oracle files? If  an
oracle-specific bug is fixed the version number will updated. Likewise
if Postgresql support is added. But I don't want to worry about new
versions if they don't affect me.

We could solve  these problems by putting each set of
database-vendor-specific files in its own directory tree.

What I'm proposing is that the directory structure for reactor
generated files be changed to something like this.

- Generic (or "Base", or something...)
 - Foo
   - FooDAO.cfc
   - FooGateway.cfc
   - FooMetaData.cfc
   - ...
 - Bar
   - BarDAO.cfc
   - BarGateway.cfc
   - BarMetaData.cfc
   - ...
- MySQL
 - Foo
   - FooDAOmysql.cfc
   - FooGatewaymysql..cfc
   - FooMetaDatamysql..cfc
   - ...
 - Bar
   - BarDAOmysql..cfc
   - BarGatewaymysql..cfc
   - BarMetaDatamysql..cfc
   - ...
- Oracle
 - Foo
   - FooDAOoracle.cfc
   - FooGatewayoracle..cfc
   - FooMetaDataoracle..cfc
   - ...
 - Bar
   - BarDAOoracle..cfc
   - BarGatewayoracle..cfc
   - BarMetaDataoracle..cfc
   - ...
- ...

Thoughts?

Patrick












--
Patrick McElhaney
704.560.9117


-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
Reactor for ColdFusion Mailing List
[email protected]
Archives at: http://www.mail-archive.com/reactor%40doughughes.net/
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

Reply via email to