I'm having some trouble working this one out, probably more than I should. This is a pretty large project, with a very clearly defined structure, with no obvious problems, but I can't seem to figure out the optimal solution for this case, even after reading several convention documents and such.
For example, given the following namespace:
\vendor\core\lib\view;
Obviously it refers to a "view" namespace...which technically also has a 'view' class in it:
\vendor\core\lib\view\view
This is clearly not ideal, but I can't come up with a better way to name these. Take for example the cache namespace:
\vendor\core\lib\cache;
Same deal, the cache class becomes confusing when inside this namespace:
\vendor\core\lib\cache\cache;
Should I just move these 'core' classes from their namespaces, and put them in the parent namespace?
\vendor\core\lib\cache (class)
\vendor\core\lib\cache\adapter\redis (class)
Or is there a better term to refer to these types of classes?
Pardon my circularity, it's a bit late and my head's not quite working in optimal condition.