title: Best practice: ordering of public/protected/private within the class definition?
body: <p>I am starting a new project from the ground up and want it to be clean / have good coding standards. In what order do the seasoned developers on here like to lay things out within a class?</p>
  
  <p>A : 1) public methods 2) private methods 3) public vars 4) private vars</p>
  
  <p>B : 1) public vars 2) private vars 3) public methods 4) private methods</p>
  
  <p>C : 1) public vars 2) public methods 3) private methods 4)private vars</p>
  
  <p>I generally like to put public static vars at the top, but then would a public static method be listed ahead of your constructor, or should the constructor always be listed first? That sort of thing...</p>
  
  <p>I know it's finnicky but I just wondered: what are best practices for this?</p>
  
  <p><em>PS: no I don't use Cc#. I know. I'm a luddite.</em></p>