This isn't necessarily a 3.1 thing, even though to do this should only
take a matter of minutes, but I wanted to throw out the idea of moving
all the interfaces in model.* to the business package.
This is possibly just another one of my pet peeves, but I've never
really understood why all of the manager interfaces needed to be in a
separate java package. Is there any real reason for doing that?
To me it makes more sense for those interfaces to be in the business.*
package somewhere since they are actually part of the business layer and
can have their implementation class nearby which makes it easier to work
on the code. I would also suggest that some of the interfaces in
model.* may be better off grouped into subdirectories of the business
package for better organization. For example, it makes sense to me that
the IndexManager (used for search) would actually be in the
roller.business.search package. Another one would be that the
ThreadManager would be in the roller.business.runnable package. This
way we are grouping the code by functionality, not by type
(managers/interfaces).
The other, possibly more tangible benefit, is that sometimes you may
want to define parts of these interfaces with "protected" level access
to try and confine their activities within a given package, but that is
not possible with the current layout. We may never need to do that, but
I think it should be possible.
So, would anyone object to me drawing up a proposal for shifting around
some of the classes/interfaces in the business package? Again, this
doesn't have to be a 3.1 proposal, but I don't see why it couldn't since
it's only moving files around without modifying any functionality.
-- Allen
- Code reorganization: Move model.* to business package Allen Gilliland
-