The 80/24 Rule
I have started to move in the other direction for C#. A long sequence of code that flows in one direction should be kept in one method if possible. Good reasons to break up a method are things that are <i>not</i> readability but other things such as re-use testability. If the methods are only called in one place and not performing a piece of work that is testable, then they shouldn’t be methods.<p>But<p><pre><code>   DoAll() {
     DoA();
     DoB();
     DoC();
   }
</code></pre>
Is simply not better in any way than<p><pre><code>    DoAll() {
      &#x2F;&#x2F; A
      ...
      &#x2F;&#x2F; B
      ...
      &#x2F;&#x2F; C
      ...
    }
</code></pre>
Private methods will blur this somewhat. The key to readability is not having to jump around. Ideally of course methods are both short <i>and</i> reusable, readable without jumping etc, but given the choice between a 100 line method or the same code broken into 10 methods of 15 lines each (yes, more lines), where each method is only called once from a main method, I’d rather read the first. The 100 lines might indicate some <i>other</i> problem with the api (a chatty Dx12&#x2F;win32-like API for example).<p>This obviously varies from case to case, I think one of the worse things a team can do is enforce hard rules that invariably lead to “style rule-induced damage”.