Multiple namespaces in a project
Here's a funny one - last night I had a chat to a new developer. He's throwing himself into .Net and leaving Java (good on him!).
After having had a look at his code, which is generally sound, he has a LOT of projects. His response was "a project should only contain one namespace to make logical ordering of classes easier to navigate".
We discussed this and i noticed that there's two very seperate minds on this.
1) As long as functionality is dictated by the namespace it doesn't matter.
or...
2) The namespace should be directly related to the project it resides in.
For instance a business model project:
MyProject.BusinessModels.ServiceDiscovery
MyProject.BusinessModels.AuthenticationServices
MyProject.BusinessModels.ServiceTokens
Once you reference the assembly/project, the logic of keeping it seperated is not beyond me. You don't see this seperation when you code but as the solution grows it can become rather "busy" in there.
So, should you keep 1 project for 1 namespace?
I believe you should and i commend this young fella for keeping his logic and architecture simple :)