Is this good or bad practice to use non-nested classes in same source file under same name space
<blockquote>
  <p><strong>Possible Duplicate:</strong><br>
  <a href="http://stackoverflow.com/questions/144783/c-classes-in-separate-files">C# classes in separate files?</a>  </p>
</blockquote>



<p>I came to a new company and found that a C# project had in it a single source file.., that had within it two interfaces and two public classes. (Truth is this is how they do things in most of their projects.) Neither of the three classes were nested.  They did however have a chain of inheritance.., starting with on of the two classes using dependency injection.</p>

<p>Question 1:
So my question really is NOT regarding the pattern as much as what is good practice regarding whether or not each of these interfaces should be in on single source file or a source file per class or interface?<br>
Question 2:
Is there a good blog, forum, link, or book addressing this issue?</p>

<p>I don't instantly like this kind of practice with a single source file being used.  I'm use to single a source file per class or interface.  I like a source file per class or interface because it gives me file level browse regarding encapsulation possibilities.  Also the name of the file starts with ISomething and then has two public classes in it. :(</p>
